Rustプログラミング言語のメインソースリポジトリ。コンパイラ、標準ライブラリ、ドキュメントを収録しています。
swiftlang/swift
Swiftプログラミング言語とコンパイラツールチェーン。メモリ安全性と高いパフォーマンスを備え、CやObjective-Cをシームレスに利用できます。
- スター
- 70,545
- フォーク
- 10,898
- 未解決の Issue
- 9,514
- 最終コミット
- 12 時間前
これは何?
Swiftは、モダンな構文を備え、デフォルトでメモリ安全性が確保されたシステム指向のプログラミング言語です。既存のCやObjective-Cのコード、フレームワークに直接アクセスできるため、すでに広く使われているプラットフォームライブラリとの連携に適しています。
フロー制御、データ構造、関数に加えて、オブジェクト、プロトコル、クロージャ、ジェネリクスなどの高水準な構成要素も備えています。ヘッダーファイルの代わりにモジュールを使うため、ヘッダーと実装の間で宣言を重複させる必要がありません。
このリポジトリには、コンパイラとツールチェーンのソースコードが含まれています。READMEでは、build-toolchainスクリプトを使ったツールチェーンのビルド方法、macOS上のXcodeへのカスタムツールチェーンのインストール方法、Xcodeのバージョンに関連するビルド失敗への対処方法を説明しています。
主な機能
- 01デフォルトでメモリ安全
- 02CやObjective-Cのコード、フレームワークとの直接的な相互運用性
- 03プロトコル、クロージャ、ジェネリクスを備えたモダンな構文
- 04ヘッダーファイルを不要にするモジュールシステム
- 05ローカルのツールチェーンスナップショットを作成するbuild-toolchainスクリプト
ユースケース
- 既存のObjective-CやCのライブラリを活用したAppleプラットフォーム向けアプリの開発
- Swiftコンパイラへの修正や機能のコントリビュート
- 開発や配布に使うカスタムSwiftツールチェーンのビルド
- モダンな言語の本番用コンパイラの構造を学ぶ
クイックスタート
- 1
ビルドの前提条件については「Getting Started」ガイドを確認してください
- 2
build-toolchain スクリプトを使って Swift ツールチェーンをビルドしてください
./swift/utils/build-toolchain $BUNDLE_PREFIX
使う前に知っておきたいこと
- ソースからのビルドは大規模な C++ プロジェクトであり、macOS では特定のバージョンの Xcode が必要です。
- ツールチェーンのビルドは負荷が高く、時間がかかるうえ、多くのディスク容量と計算リソースを必要とします。
収録されている特集
トピック
よくある質問
- swift とは?
- Swiftプログラミング言語とコンパイラツールチェーン。メモリ安全性と高いパフォーマンスを備え、CやObjective-Cをシームレスに利用できます。 Swiftは、モダンな構文を備え、デフォルトでメモリ安全性が確保されたシステム指向のプログラミング言語です。既存のCやObjective-Cのコード、フレームワークに直接アクセスできるため、すでに広く使われているプラットフォームライブラリとの連携に適しています。
- swift は無料で使えますか?ライセンスは?
- swift は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- swift は今もメンテナンスされていますか?
- 活発にメンテナンス中。swift の最終コミットは 2026年11月7日 です。
- swift は何に使えますか?
- 既存のObjective-CやCのライブラリを活用したAppleプラットフォーム向けアプリの開発 Swiftコンパイラへの修正や機能のコントリビュート 開発や配布に使うカスタムSwiftツールチェーンのビルド モダンな言語の本番用コンパイラの構造を学ぶ
- swift のインストール方法は?
- ビルドの前提条件については「Getting Started」ガイドを確認してください build-toolchain スクリプトを使って Swift ツールチェーンをビルドしてください: ./swift/utils/build-toolchain $BUNDLE_PREFIX
- swift はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/swiftlang/swift
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ヒープアロケーターやガベージコレクターを使わず、コンパイラー管理のデータスタックでメモリ安全性を実現する、実験的なシステムプログラミング言語です。
既存コードをほぼ変更せずにコンパイルでき、メモリエラーをpanicとして検出する、メモリ安全なC/C++実装です。
Goは、シンプルで信頼性が高く、効率的なソフトウェアを開発するためのオープンソースプログラミング言語です。
Swayは、Fuelブロックチェーン上のスマートコントラクト開発向けに作られた、Rustに着想を得たプログラミング言語です。
JetBrainsがマルチプラットフォーム開発向けに開発するKotlin言語と、そのコンパイラ、標準ライブラリ、ビルドツール。