ギラド・ブラチャ | |
|---|---|
ギラッド・ブラチャ 2006 | |
| 母校 | ユタ大学 |
| 受賞歴 | 上級ダール・ナイガード賞(2017) |
| 科学者としてのキャリア | |
| フィールド | コンピュータサイエンス |
| 機関 | アニモルフィックシステムズ サンマイクロシステムズ ケイデンスデザインシステムズ グーグル F5ネットワークス |
| 論文 | プログラミング言語「ジグソー」: ミックスイン、モジュール性、多重継承 (1991) |
| 博士課程の指導教員 | ゲイリー・リンドストロム |
| Webサイト | ブラチャ |
ギラッド・ブラチャはF5ネットワークスのソフトウェアエンジニアであり、以前はGoogleのDartプログラミング言語チームに所属していました。 [1] [2] [3]彼はNewspeak言語の作成者であり、 Java言語仕様の第2版と第3版の共著者であり、[4] Java仮想マシン仕様の第2版の主要な貢献者です。[5]
1994年から1997年にかけて、彼はAnimorphic Systems [6]が開発したSmalltalkシステムに携わった。Animorphic Systemsは1997年にSunに買収された。1997年から2006年にかけて、彼はSun Microsystemsで計算神学者として働き、2005年には著名なエンジニアとなり、Javaの仕様と実装のさまざまな側面に携わった。[6]その後、 2006年から2009年にかけてCadence Design Systemsで著名なエンジニアを務め、 Newspeakの設計と実装を行う開発者チームを率いた。[6]
ブラハ氏はイスラエルのベングリオン大学で数学とコンピュータサイエンスの学士号を取得し、ユタ大学でコンピュータサイエンスの博士号を取得しました。[7] ブラハ氏は2017年にシニア・ダール・ナイガード賞を受賞しました。
BGGAの閉鎖
2006年、BrachaはNeal Gafter、James Gosling、Peter von der Ahé(総称してBGGA)とともに、Java言語バージョン6にクロージャを追加するための仕様を起草しました。 [8]この提案は、Joshua Blochによって、不必要に複雑である(関数型と非ローカル戻り値の追加)という点と、他のより単純な提案に比べて平均的なJavaプログラマーにとってのメリットがほとんどないという点で批判されました。[9]クロージャはJava 8に追加されましたが、BGGAの提案とは異なる提案に基づいています。
プラグ可能なタイプのシステム
Bracha は、型システムの選択は言語の選択とは独立して行われるべきであると提案しました。つまり、型システムは必要に応じて言語に「プラグイン」できるモジュールであるべきだということです。彼は、これが有利だと考えています。なぜなら、彼が「必須型システム」と呼ぶものは、言語の表現力を低下させ、コードをより脆弱にするからです。 [10]型が言語のセマンティクスに影響を与えないという要件を満たすのは困難です。たとえば、型ベースのオーバーロードなどの構造は許可されていません。
実際には、プラグ可能な型システムは、オプショナルタイピング、型ヒント、型注釈、段階的型チェックなど、さまざまな名前で呼ばれています。これらは、既存の動的型付け言語に、セマンティクスや通常は構文を変更せずに静的型システムを追加することで構築される傾向があります。例としては、Smalltalk、[11]、 Python 3、[12] [13]、 Ruby、[14]、 Clojure、[15]、PHP 5などがあります。 [16]ほとんどの言語では、型システムの実装は 1 つしかありません。例外は Python 3 で、型システムは真にプラグ可能です。複数の実装があり、プログラマは最適なものを使用できるためです。最初からプラグ可能な型システムで設計された唯一の言語は Newspeak です。Java 8 では型システムを拡張する機能が提供されていますが、静的型付けと動的型付けの選択など、型システムの基本に柔軟性はありません。[17]
参考文献
- ^ “Gilad Bracha”。2012年4月2日時点のオリジナルよりアーカイブ。2012年3月15日閲覧。
- ^ ギラド・ブラチャとのチャンネル9インタビュー(mp3)
- ^ https://www.linkedin.com/in/gbracha/ [自費出版ソース]
- ^ Bracha, Gilad. 「Java 言語仕様」(第 3 版)。Oracle。2014 年 10 月 31 日時点のオリジナルからのアーカイブ。
- ^ Bracha, Gilad. 「序文」。Java 仮想マシン仕様 (第 2 版)。Oracle。2014 年 7 月 11 日時点のオリジナルからのアーカイブ。
- ^ abc ギラド・ブラチャの履歴書
- ^ ブラハの「略歴」
- ^ 「Java プログラミング言語のクロージャ (ラムダ式)」。
- ^ Bloch, Joshua (2009年4月8日). The Closures Controversy (スピーチ). Javapolis '07. 2015年2月4日時点のオリジナルよりアーカイブ。 2015年2月3日閲覧。
- ^ Bracha, G.: プラグ可能な型
- ^ 「Google Code アーカイブ – Google Code プロジェクト ホスティング用の長期ストレージ」。
- ^ 「PEP 3107 – 関数アノテーション」。
- ^ 「PyContracts – PyContracts 1.7.16 ドキュメント」。
- ^ 「Ruby の段階的型チェック」 2014 年 5 月 6 日。
- ^ 「ホーム – clojure/Core.typed Wiki」。GitHub。
- ^ 「Type Hinting」。2014年10月18日時点のオリジナルよりアーカイブ。2014年10月18日閲覧。
- ^ 「型注釈とプラグ可能な型システム」。Oracle。
外部リンク
- 公式サイト
- ブラハのブログ
- Brachaの古いブログ(Sun)
