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