Fortress
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、プログラミング言語について説明しています。その他の用法については「フォートレス (曖昧さ回避)」をご覧ください。

Fortress開発者サン・マイクロシステムズ研究所
最新リリース1.0_5033/ 2011年9月7日 (12年前) (2011-09-07)
影響を受けた言語FORTRANScalaHaskell
プラットフォームJava仮想マシン
ライセンスBSDライセンス
ウェブサイトprojectfortress.java.net>
テンプレートを表示

Fortress(フォートレス)は、高性能を目指して設計された実験的なプログラミング言語であった。米国国防高等研究計画局高生産性計算機システムプロジェクトの資金援助を受けてサン・マイクロシステムズ研究所で作られた。設計者の一人にSchemeCommon LispJavaなどを手がけたガイ・スティール・ジュニアがいる。ただし、現在は開発が中止されている。
特徴

言語の名前「Fortress」は英語で「要塞」を意味する言葉であるが、これには「安全な Fortran」という意味が込められている。安全な言語とは、例えば「現代のプログラミング言語に標準的に備わっている、抽象化の仕組みや型の安全性を保証する仕組みを備えた高性能の計算機言語」ということである[1]。この言語はまた、暗黙の並列性や、UNICODE 対応、数学記法(英語版)に似た文法という特徴もある。この言語は Fortran 言語に似せて設計されたわけではない。文法が最も近い言語は ScalaStandard MLHaskell である。基礎設計レベルで複数のスタイルシートの文法を持つように設計されている。ソースコードは UNICODE 、 ASCII テキスト、あるいは、整形された画像として表示できる。これにより、数学記号やその他の記号をレンダリングされた出力でサポートし、読みやすさを向上させることができる。Emacsベースのfortifyというツールは、ASCIIベースのFortressソースコードをLaTeXの出力に変換する[2]

Fortress はまた、Java に由来する高度な並列性と豊富に機能性の両方を兼ね備えている。例えば、forループは基本的に並列演算であり、環境によっては逐次的に実行されない場合がある。しかし、forループはライブラリー関数であり、プログラマーは組み込みの for ループを、他の好きな for ループで置き換えることができる。
歴史

Fortress言語は「高生産性計算機システムプロジェクト」の三つの言語の中の一つであった。(残りの二つの言語は、IBM 社の X10 言語と、クレイ社の Chapel 言語である)サン・マイクロシステムズは Fortress の将来性が不確実だとして、2006年11月にこのプロジェクトから離脱した[3]

2007年1月に Fortress は「オープンソース・コミュニティーによるオープンソース・プロジェクト」に姿を変え、「サン以外の人たちが Fortress のコードを書き、オープンソースの Fortress インタプリタで実行するようになった」[4]。Fortress 言語仕様の第 1.0 版は、2008年4月に公開された。Java仮想マシンをターゲットとした実装に準拠した仕様であった。

2012年7月には、減速期間の後、積極的な開発は終了すると発表された。既存の仮想機械上で Fortress 言語の型システムを使うのは複雑であるとのことである[5]
例:Hello world!

これは、Fortress Reference Card で紹介されている、典型的なHello worldプログラムのFortress版である[2]。component helloexport Executablerun() = println(“Hello, World!”)end


export文はプログラムをexecutableにし、Fortressのすべての実行プログラムはrun()関数を実装しなければならない。コンパイルのためにプログラムを保存するファイルは、最初のcomponent文で指定したものと同じ名前でなければならない。画面に "Hello, World!" の文字を出力するのは、println()関数である。
脚注^Draft specification
^ a b “Project Fortress Reference Card” (PDF). Java.net. 2016年3月4日時点のオリジナルよりアーカイブ。2016年9月24日閲覧。
^ Sun Not Selected for HPCS Phase III: My Thoughts
^ 「 ⇒GBC/ACM: Meeting - What's Cool about Fortress」、ガイ・スティール・ジュニア。
^ Fortress Wrapping Up

関連項目

区分化大域アドレス空間

Chapel

X10 (プログラミング言語)

外部リンク

Project Fortress

Active Timeline of Specification and Reference Implementation

The Fortress Language Specification (Latest version is 1.0, March 31, 2008) (PDFファイル)

The Soul of Fortress (ガイ・スティール・ジュニアへのインタビュー)

Fortress Open Source Project Home

Project Fortress Mailing Lists

Programming Language Research Group

Fortress Publications and Specifications

Fortress Plugin for Eclipse

Fortress FAQ

Fortress Programming Language Tutorial (PDFファイル)


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:20 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef