F#Commencer avec F #


Remarques

F # est une langue "fonctionnelle-première". Vous pouvez en apprendre davantage sur tous les différents types d'expressions , ainsi que des fonctions .

Le compilateur F # - qui est open source - compile vos programmes en IL, ce qui signifie que vous pouvez utiliser le code F # à partir de tout langage compatible .NET tel que C # ; et l'exécuter sur Mono, .NET Core ou .NET Framework sous Windows.

Versions

Version Date de sortie
1 fois 2005-05-01
2.0 2010-04-01
3.0 2012-08-01
3.1 2013-10-01
4.0 2015-07-01

F # Interactive

F # Interactive, est un environnement REPL qui vous permet d'exécuter du code F #, une ligne à la fois.

Si vous avez installé Visual Studio avec F #, vous pouvez exécuter F # Interactive dans la console en tapant "C:\Program Files (x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\Fsi.exe" . Sous Linux ou OS X, la commande est fsharpi à la place, qui devrait être soit dans /usr/bin ou /usr/local/bin selon la façon dont vous avez installé F # - De toute façon, la commande doit être sur votre PATH afin que vous puissiez tapez simplement fsharpi .

Exemple d'utilisation interactive de 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
 

Utilisez #help;; pour aider

S'il vous plaît noter l'utilisation de ;; pour indiquer à REPL d'exécuter les commandes précédemment saisies.

Bonjour le monde!

Ceci est le code pour un projet de console simple, qui affiche "Hello, World!" à STDOUT, et quitte avec un code de sortie de 0

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

Exemple de décomposition Ligne par ligne:

  • [<EntryPoint>] - Un attribut .net qui marque "la méthode que vous utilisez pour définir le point d’entrée" de votre programme ( source ).
  • let main argv - définit une fonction appelée main avec un seul paramètre argv . Comme il s'agit du point d'entrée du programme, argv sera un tableau de chaînes. Le contenu du tableau sont les arguments transmis au programme lors de son exécution.
  • printfn "Hello, World!" - la fonction printfn la chaîne ** passée en premier argument, en ajoutant également une nouvelle ligne.
  • 0 - F # renvoient toujours une valeur et la valeur renvoyée est le résultat de la dernière expression de la fonction. Mettre 0 comme dernière ligne signifie que la fonction retournera toujours zéro (un entier).

** Ce n'est en fait pas une chaîne même si elle en a l'air. C'est en fait un TextWriterFormat , qui permet éventuellement d'utiliser des arguments vérifiés de type statique. Mais dans le cas d'un exemple de "bonjour le monde", on peut le considérer comme une chaîne.

Installation ou configuration

les fenêtres

Si Visual Studio (toute version incluant Express et Community) est installé, F # devrait déjà être inclus. Choisissez simplement F # comme langue lorsque vous créez un nouveau projet. Ou consultez http://fsharp.org/use/windows/ pour plus d'options.

OS X

Xamarin Studio prend en charge F #. Vous pouvez également utiliser VS Code pour OS X , un éditeur multi-plateforme de Microsoft.
Une fois l'installation terminée, lancez VS Code Quick Open ( Ctrl + P ), puis exécutez ext install Ionide-fsharp

Vous pouvez également envisager Visual Studio pour Mac .

Il existe d'autres alternatives décrites ici .

Linux

Installez les packages mono-complete et fsharp via le gestionnaire de paquets de votre distribution (Apt, Yum, etc.). Pour une bonne expérience de montage, utilisez Visual Studio Code et installez le ionide-fsharp in ionide-fsharp ou utilisez Atom et installez le ionide-installer in ionide-installer . Voir http://fsharp.org/use/linux/ pour plus d'options.