GNU Compiler for Java GNU Compiler for Javaの概要

GNU Compiler for Java

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/06/02 07:50 UTC 版)

ナビゲーションに移動 検索に移動
GNU Compiler for Java
作者 GNUプロジェクト
最新版 6.4 / 2017年7月4日(2年前) (2017-07-04
対応OS Unix-like
種別 コンパイラ
ライセンス GPL
公式サイト http://gcc.gnu.org/java
テンプレートを表示

AWTSwingの2つのグラフィカルAPIをGNU Classpathにサポートさせることに現在多くの労力が投入されている。AWTとSwingの両方のフルサポートは間近であり、AWT/Swingアプリケーションを実行するためにサン・マイクロシステムズから提供されたランタイムを使用する必要性は遠からずなくなる見通しである。

2015年より、新しい開発のアナウンスはなく、製品はメンテナンスモードとなった[1]。2016年9月30日、GCJはGCCのtrunkから削除された[2][3]。削除のアナウンスは、GCJを含まないGCC 7.1のリリースとともに行われた[4]。GCJはGCC 6の一部として残されている。

CNI (Compiled Native Interface)

CNI (Compiled Native Interface)は、ネイティブアプリケーションやC++で記述されたライブラリを、Javaコードとの間で相互に呼び出せるようにするためのGCJのためのソフトウェアフレームワークである。

これは多くのJava仮想マシンで標準とされているJNI (Java Native Interface)フレームワークに似ているが、CNIの作成者はJNIに対して幾つもの優位性を主張している。

我々はCNIをより良い手段だと考えて採用している。特に、Javaは標準的なコンパイル技術を使って実装されるもう一つのプログラミング言語に過ぎない、とする発想に基づいたJava実装において、より良いと考える。それゆえ、そしてGCCを用いた言語実装は出来るだけ互換であるべきなので、Javaの呼び出し規約は、他の言語、特にC++で使用される規約に対して、実用性を損なわない範囲で極力似ていなければならない。なぜなら我々は、JavaをC++のサブセットと考えることもできるためである。CNIは、単にC++とJavaは同じ呼び出し規約とオブジェクト配置を持ち、バイナリ互換である、という発想によるヘルパー関数と規約のセットである。(この説明は単純化されているが、十分に正確である)[5]

脚注

[脚注の使い方]

関連項目

外部リンク


  1. ^ GCC Looks To Turn Off Java, Replace With Go Or ADA
  2. ^ Andrew Haley (2016年9月30日). “[gcc] Revision 240661”. 2017年12月9日閲覧。
  3. ^ Tromey, Tom (2016年10月2日). “The Deletion of gcj”. The Cliffs of Inanity. 2016年10月3日閲覧。
  4. ^ GCC 7 Release Series: Changes, New Features, and Fixes”. 2017年5月9日閲覧。
  5. ^ The GCJ FAQ 2.3 Why does GCJ use CNI?[1] より


「GNU Compiler for Java」の続きの解説一覧




固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

GNU Compiler for Javaのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



GNU Compiler for Javaのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのGNU Compiler for Java (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS