サーチ…
備考
F#は "機能優先"言語です。さまざまな種類の表現のすべてについて、 関数とともに学ぶことができます 。
オープンソースのF#コンパイラはプログラムをILにコンパイルします。つまり、 C#などの.NET互換言語からF#コードを使用できます。 Mono、 .NET Core 、またはWindowsの.NET Frameworkで実行します。
バージョン
バージョン | 発売日 |
---|---|
1.x | 2005-05-01 |
2.0 | 2010-04-01 |
3.0 | 2012-08-01 |
3.1 | 2013年10月1日 |
4.0 | 2015-07-01 |
インストールまたはセットアップ
Windows
Visual Studio(Expressおよびコミュニティを含むすべてのバージョン)がインストールされている場合は、F#が既に含まれているはずです。新しいプロジェクトを作成するときに言語としてF#を選択するだけです。または、その他のオプションについてはhttp://fsharp.org/use/windows/を参照してください 。
OS X
Xamarin StudioはF#をサポートしています。また、MicrosoftのクロスプラットフォームエディタであるOS X用のVSコードを使用することもできます。
VSコードのインストールが完了したら、 VS Code Quick Open
( Ctrl + P )を実行し、 ext install Ionide-fsharp
実行します
また、 Visual Studio for Macを検討することもできます。
他の選択肢がここに記載されています 。
Linux
あなたのディストリビューションのパッケージマネージャー(Apt、Yumなど)をfsharp
、 mono-complete
パッケージとfsharp
パッケージをインストールします。優れた編集経験を得るには、 Visual Studioコードを使用してionide-fsharp
プラグインをインストールするか、 Atomを使用してionide-installer
プラグインをionide-installer
ます。他のオプションについてはhttp://fsharp.org/use/linux/を参照してください 。
こんにちは世界!
これは、単純なコンソールプロジェクトのコードで、 "Hello、World!" STDOUTに出力し、終了コード0
終了します
[<EntryPoint>]
let main argv =
printfn "Hello, World!"
0
行ごとのブレークダウン例:
-
[<EntryPoint>]
- あなたのプログラム( ソース )の "エントリーポイントを設定するために使用するメソッド"をマークする.net属性 。 -
let main argv
- これは、単一の引数argv
持つmain
という関数を定義します。これはプログラムのエントリポイントなので、argv
は文字列の配列になります。配列の内容は、実行時にプログラムに渡された引数です。 -
printfn "Hello, World!"
-printfn
関数は、渡された文字列**を最初の引数として出力し、改行も追加します。 -
0
- F#関数は常に値を返し、返される値は関数の最後の式の結果です。0
を最後の行にすると、関数は常にゼロ(整数)を返します。
**これは文字列ではありませんが 、実際には文字列ではありません 。実際にはTextWriterFormatであり、オプションで静的型チェックされた引数の使用を許可します。しかし、 "こんにちは世界"の例では、文字列として考えることができます。
F#インタラクティブ
F#対話型は、一度に1行ずつF#コードを実行できるREPL環境です。
F#でVisual Studioをインストールした場合は、 "C:\Program Files (x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\Fsi.exe"
入力してF#Interactiveをコンソールで実行できます。 LinuxまたはOS X上で、コマンドがあるfsharpi
のいずれかであるべきで、代わりに/usr/bin
またはで/usr/local/bin
あなたはF#のインストール方法に応じて-いずれかの方法で、コマンドがあなたの上になければなりませんPATH
することができますので、単にfsharpi
ます。
F#インタラクティブな使用の例:
> let i = 1 // fsi prompt, declare i
- let j = 2 // declare j
- i+j // compose expression
- ;; // execute commands
val i : int = 1 // fsi output started, this gives the value of i
val j : int = 2 // the value of j
val it : int = 3 // computed expression
> #quit;; //quit fsi
#help;;
使用し#help;;
助けを求める
;;
の使用に注意してください。以前に入力されたコマンドを実行するようにREPLに指示します。