F Sharp

Da Wikipedia, l'enciclopedia libera.
Nota disambigua.png
Il titolo di questa voce non è corretto per via delle caratteristiche del software MediaWiki. Il titolo corretto è F#.
bussola Disambiguazione – Se stai cercando la nota Fa diesis nella notazione musicale in uso nei paesi di lingua inglese e tedesca, vedi Scala musicale.
F#
FSharp Logo.png
Autore Microsoft Research, Don Syme
Data di origine 2005
Utilizzo Generico
Paradigmi Multi-Paradigma: Funzionale, Imperativa, Object-Oriented
Tipizzazione Statica, Forte
Estensioni comuni .fs
Influenzato da ML, O'Caml, C#, Python, Haskell, Scala, Erlang
Ha influenzato F*, LiveScript

F# (si legge F Sharp) è un linguaggio di programmazione multi-paradigma, basato su .NET Framework, che permette la programmazione funzionale così come quella imperativa e quella ad oggetti. È una variante del linguaggio ML ed è largamente compatibile con l'implementazione di OCaml. F# è stato sviluppato inizialmente da Don Syme al Microsoft Research ed attualmente è implementato dalla divisione sviluppo di Microsoft per fornire un completo supporto del .NET Framework ed essere pienamente supportato in Visual Studio.[1]

Esempi[modifica | modifica wikitesto]

Segue un piccolo esempio del classico Hello world:

(* Questo è un commento *)
printf "Hello World!"

Altri esempi:

(* funzione ricorsiva che stampa gli elementi di una lista di Integer *)
let printlist xs = xs |> List.iter (fun x -> printfn "%d\n" x)
 
(* funzione ricorsiva che calcola l'n-simo numero di Fibonacci *)
let rec fib = function
    | 0 | 1 -> 1
    | n -> fib (n - 1) + fib (n - 2)
 
(* Stampa i primi 10 numeri di Fibonacci *)
[1 .. 10] |> List.map fib |> printlist
 
(* Stampa i primi 10 numeri di Fibonacci *)
[ for i in 1..10 do yield fib i ] |> printlist

Note[modifica | modifica wikitesto]

  1. ^ S. Somasegar, F# - A functional Programming Language. URL consultato il 18 ottobre 2007.

Voci correlate[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]


informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica