F#Erste Schritte mit F #

Bemerkungen

F # ist eine "funktional zuerst" Sprache. Sie können alle verschiedenen Arten von Ausdrücken sowie Funktionen kennenlernen .

Der F # -Compiler - Open Source - kompiliert Ihre Programme in IL, was bedeutet, dass Sie F # -Code aus jeder .NET-kompatiblen Sprache wie C # verwenden können . und führen Sie es unter Mono, .NET Core oder .NET Framework unter Windows aus.

Versionen

Ausführung Veröffentlichungsdatum
1.x 2005-05-01
2,0 2010-04-01
3,0 2012-08-01
3.1 2013-10-01
4,0 2015-07-01

Installation oder Setup

Windows

Wenn Sie Visual Studio (eine beliebige Version einschließlich Express und Community) installiert haben, sollte F # bereits enthalten sein. Wählen Sie einfach F # als Sprache, wenn Sie ein neues Projekt erstellen. Oder besuchen Sie http://fsharp.org/use/windows/ für weitere Optionen.

OS X

Xamarin Studio unterstützt F #. Alternativ können Sie VS Code für OS X verwenden , einen plattformübergreifenden Editor von Microsoft.
Wenn Sie mit der Installation von VS Code fertig sind, starten Sie VS Code Quick Open ( Strg + P ) und führen Sie die ext install Ionide-fsharp

Sie können auch Visual Studio für Mac in Betracht ziehen.

Es gibt andere Alternativen, die hier beschrieben werden .

Linux

Installieren Sie die Pakete mono-complete und fsharp über den Paketmanager Ihrer Distribution (Apt, Yum usw.). Für eine gute Bearbeitung Erfahrung, verwenden Sie entweder Visual Studio - ionide-fsharp ionide-installer Code und installieren Sie die ionide-fsharp Plugin, oder verwenden Atom und die Installation von ionide-installer - Plugin. Weitere Optionen finden Sie unter http://fsharp.org/use/linux/ .

Hallo Welt!

Dies ist der Code für ein einfaches Konsolenprojekt, das "Hallo, Welt!" zu STDOUT und beendet den Exit-Code 0

[<EntryPoint>]
let main argv = 
    printfn "Hello, World!"
    0 

Beispiel für eine Aufteilung Zeile für Zeile:

  • [<EntryPoint>] - Ein .net-Attribut , das "die Methode, mit der Sie den Einstiegspunkt festlegen" Ihres Programms ( Quelle ) kennzeichnet.
  • let main argv - definiert eine Funktion namens main mit einem einzigen Parameter argv . Da dies der Programmeinstiegspunkt ist, wird argv ein Array von Strings sein. Der Inhalt des Arrays sind die Argumente, die an das Programm übergeben wurden, als es ausgeführt wurde.
  • printfn "Hello, World!" - Die Funktion printfn gibt den übergebenen String ** als erstes Argument aus und fügt auch eine neue Zeile hinzu.
  • 0 - F # -Funktionen geben immer einen Wert zurück, und der zurückgegebene Wert ist das Ergebnis des letzten Ausdrucks in der Funktion. Wenn Sie als letzte Zeile 0 eingeben, gibt die Funktion immer Null (eine ganze Zahl) zurück.

** Dies ist eigentlich keine Zeichenfolge, obwohl es wie eine aussieht. Es ist eigentlich ein TextWriterFormat , das optional die Verwendung von statisch typgeprüften Argumenten erlaubt. Aber für ein "Hallo Welt" -Beispiel kann man es als eine Zeichenkette betrachten.

F # interaktiv

F # Interactive ist eine REPL-Umgebung, in der Sie F # -Code Zeile für Zeile ausführen können.

Wenn Sie Visual Studio mit F # installiert haben, können Sie F # Interactive in der Konsole ausführen, indem Sie "C:\Program Files (x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\Fsi.exe" . Unter Linux oder OS X, ist der Befehl fsharpi statt, die entweder in sein sollte /usr/bin oder in /usr/local/bin , je nachdem , wie Sie F # installiert - so oder so, sollte der Befehl auf Ihrem sein PATH so können Sie fsharpi einfach fsharpi .

Beispiel für die interaktive Verwendung von 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

Verwenden Sie #help;; für Hilfe

Bitte beachten Sie die Verwendung von ;; um der REPL mitzuteilen, zuvor eingegebene Befehle auszuführen.