「F Sharp」を編集中

ナビゲーションに移動 検索に移動

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
1行目: 1行目:
'''F#'''(読み:えふしゃーぷ、語源:functional)とは、謎である。
+
'''F#'''(えふしゃーぷ)とは、謎である。
 
最近は一子'''F*'''(えふすたー)をもうけ、子育てに忙しい。
 
最近は一子'''F*'''(えふすたー)をもうけ、子育てに忙しい。
 
== 名称 ==
 
その名称からF#を[[FORTRAN]]の[[CLR]]実装だと勘違いしている人が多いが、[[Fortran]]とは一切関係ない<ref>https://github.com/Nobuhisa/FSUG_JP/wiki</ref>。
 
聖書に相当する書籍は「[[Real-World Functional Programming]]」であることからも「functional」が語源であると思われる。正式なものは知らん。
 
 
== ライセンス ==
 
F#は[[オープンソース]]のもとで公開されており、その[[ライセンス]]には[[Apache License 2.0]]が採用されている。ただし一般的なオープンソースと異なり、リリースバージョンのみ[[オープンソース]]であるという[[コードドロップ]]という手法が採用されている。このため[[言語]]自体の仕様は[[マイクロソフト]]の管理下にあり、各種[[プラットフォーム]]への対応展開は[[オープンソース]]で可能という特殊な形態となっている。
 
  
 
== インストール ==
 
== インストール ==
 
=== FreeBSD ===
 
=== FreeBSD ===
[[FreeBSD]]の場合は[[ports]]の「lang/fsharp」を入れるのが簡単である。
+
portsのlang/fsharpを入れる。
2014年9月1日時点でのports提供バージョンはF# 3.1.1.25となっている。
+
なお、2012年3月23日時点でのports提供バージョンはF# 1.9.6.16と古い。
 
+
最新バージョンのF# 2.0.0.0はMono対応版がマイクロソフト公式サイトからダウンロードできるので、そちらを使った方がよさそうな感じ。後述するMono全般のインストール方法を使うほうが無難。
現在ではパッケージも用意されている。
 
<source lang="bash">
 
$ pkg install fsharp
 
</source>
 
 
 
<del>
 
2012年3月23日時点でのports提供バージョンはF# 1.9.6.16と古い。
 
最新バージョンのF# 2.0.0.0は[[Mono]]対応版が[[マイクロソフト]]の公式サイトから[[ダウンロード]]できるので、そちらを使った方がよさそうな感じ。後述する[[Mono]]全般のインストール方法を使うほうが無難かも。
 
</del>
 
 
 
=== Mac OS X ===
 
[[Mac OS X]]の場合は[[Xamarin Studio]]を[[インストール]]するのが簡単である。
 
なにも考える必要はない。
 
 
 
なお、[[Xamarin Studio]]は[[Lion]]以上が必須なので[[Snow Leopard]]以下の人は後述するMono全般のインストール方法を使うしか無い。そもそも[[アップル信者]]たるもの、急いで新しい[[Mac]]を[[アップルストア]]で買うべきである。それが[[ジョブズ]]の教えである。
 
  
== Mono全般 ==
+
== Mono ==
下記からF# 2.0.0.0をF#の[[zipファイル]]を[[ダウンロード]]する。
+
下記からF# 2.0.0.0をF#のzipファイルをダウンロードする。
 
* http://www.microsoft.com/download/en/details.aspx?id=11100
 
* http://www.microsoft.com/download/en/details.aspx?id=11100
  
[[zipファイル]]を展開して、好きな[[ディレクトリ]]に[[コピー]]しておく。
+
zipファイルを展開して、好きなディレクトリにコピーしておく。
 
<source lang="bash">
 
<source lang="bash">
 
$ unzip fsharp.zip -d /opt/
 
$ unzip fsharp.zip -d /opt/
40行目: 18行目:
 
</source>
 
</source>
  
[[Mono]]向けインストール用[[シェルスクリプト]]が用意されているので叩く。
+
Mono向けインストール用シェルスクリプトが用意されているので叩く。
この[[スクリプト]]は、[[グローバル・アセンブリ・キャッシュ]]([[GAC]])への登録と、fscおよびfsiコマンドへのパーミッション設定をしてくれるという内容である。
+
このスクリプトは、グローバル・アセンブリ・キャッシュ(GAC)への登録と、fscおよびfsiコマンドへのパーミッション設定をしてくれるという内容。
 
<source lang="bash">
 
<source lang="bash">
 
$ wget -O mono.snk http://github.com/mono/mono/raw/master/mcs/class/mono.snk
 
$ wget -O mono.snk http://github.com/mono/mono/raw/master/mcs/class/mono.snk
47行目: 25行目:
 
</source>
 
</source>
  
起動用の[[シェルスクリプト]]を作っておく。
+
起動用のシェルスクリプトを作っておく。
 
パスを通しておくのも忘れずに。
 
パスを通しておくのも忘れずに。
 
<source lang="bash">
 
<source lang="bash">
56行目: 34行目:
 
</source>
 
</source>
  
fsiコマンドを起動してみる。
+
起動してみる。
コンソール上で動かす場合は「--gui-」オプションを忘れずに。
 
 
<source lang="bash">
 
<source lang="bash">
$ fsi --gui-
+
$ fsi
</source>
 
 
 
[[hello, world]]を表示してみる。
 
なお、「#help;;」でヘルプが見れる。終了は「#quit;;」と打て。
 
<source lang="fsharp">
 
> printf "hello, world";;
 
hello, worldval it : unit = ()
 
> #quit;;
 
 
</source>
 
</source>
  
73行目: 42行目:
  
 
== 使い方 ==
 
== 使い方 ==
== 関連構文 ==
 
* [[スライス]]
 
 
== 関連コマンド ==
 
* [[fsharpc]] - [[コンパイラ]]。
 
* [[fsharpi]] - [[インタプリタ]]。[[スクリプト言語]]として使えるので捗る。
 
 
== 関連項目 ==
 
== 関連項目 ==
 
* [[Phalanger]] - F#の中の人も参戦している[[PHP]]実装。
 
* [[Phalanger]] - F#の中の人も参戦している[[PHP]]実装。
* [[IronJS]] - F#で書かれた[[JavaScript]]実装。
 
* [[プログラミング言語]]
 
 
 
== 参考文献 ==
 
== 参考文献 ==
{{reflist}}
+
<references />
 
 
 
== 外部リンク ==
 
== 外部リンク ==
 
* [http://www.amazon.co.jp/Real-World-Functional-Programming-Tomas-Petricek/dp/1933988924 Real-World Functional Programming]
 
* [http://www.amazon.co.jp/Real-World-Functional-Programming-Tomas-Petricek/dp/1933988924 Real-World Functional Programming]
 
{{stub}}
 
{{stub}}
 
[[category:プログラミング言語]]
 
[[category:.NET Framework]]
 

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)

このページで使用されているテンプレート:

このページは 1 個の隠しカテゴリに属しています: