Go ブログ
Go バージョン 1 のプレビュー
私たちは、Go を使用する人々に安定した基盤を提供したいと考えています。人々は Go プログラムを書いて、それが何年も変更なしにコンパイルされ、実行され続けることを期待できるべきです。同様に、人々は Go についての本を書いて、その本がどのバージョンの Go を説明しているかを示すことができ、そのバージョン番号が後になっても意味があるべきです。今日の Go では、これらのプロパティのどれも当てはまりません。
来年初めに「Go バージョン 1」、略して Go 1 と呼ばれる Go リリースを発行することを提案します。これは、この点で安定した最初の Go リリースとなります。Go バージョン 1 でコンパイルされるコードは、いくつかの例外を除いて、Go バージョン 1.1、1.2 などのアップデートやバグ修正を発行する間、そのバージョンの有効期間中、コンパイルされ続けるはずです。また、他のバージョンが進化しても、バグやセキュリティ上の欠陥の修正を伴って維持されます。また、Google App Engine などの本番環境は、長期間にわたってサポートします。
Go バージョン 1 は、安定したライブラリを持つ安定した言語になります。重要な修正を除いて、バージョン 1.1、1.2 などのライブラリとパッケージに加えられた変更は、機能を追加する可能性がありますが、既存の Go バージョン 1 プログラムを壊すことはありません。
私たちの目標は、Go 1 を今日の Go の安定版にすることであり、言語の全面的な再考ではありません。特に、「委員会によって」新しい言語機能を設計する取り組みに明確に反対しています。
ただし、Go 言語とパッケージには、以前から意図しており、試作も行っているものの、まだ導入していないさまざまな変更点があります。主な理由は、それらが重要であり、後方互換性がないためです。Go 1 が長期間持続するのであれば、これらの変更を計画、発表、実装、テストすることが Go 1 の準備の一部として重要であり、リリース後まで遅らせて、私たちの目標に反する乖離を導入することはないようにする必要があります。
本日、Go コミュニティからのフィードバックを求めて、Go 1 の暫定的な計画を公開します。フィードバックがある場合は、golang-nuts メーリングリストのスレッドに返信してください。
次の記事: Go App Engine SDK 1.5.5 がリリースされました
前の記事: ブラウザで Go を学ぶ
ブログインデックス