F Sharp

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Il titolo di questa pagina non è corretto per via delle caratteristiche del software MediaWiki. Il titolo corretto è F#.
Disambiguazione – Se stai cercando la nota Fa diesis nella notazione musicale in uso nei paesi di lingua inglese e tedesca, vedi Scala musicale.
F#
linguaggio di programmazione
AutoreMicrosoft Research, Don Syme
Data di origine2005(versione 1.0)
Ultima versione4.1b (8 dicembre 2017)
UtilizzoGenerico
ParadigmiMulti-Paradigma: Funzionale, Imperativa, Object-Oriented
TipizzazioneStatica, Forte
Estensioni comuni.fs
Influenzato daML, O'Caml, C#, Python, Haskell, Scala, Erlang
Ha influenzatoF*, LiveScript
Implementazione di riferimento
Licenzalicenza Apache
Sito webfsharp.org/

F# (pronuncia: [ˈef ˈʃɑ:p], come la parola inglese 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]

Segue un piccolo esempio del classico Hello world:

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

Altri esempi:

(* funzione 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
  1. ^ S. Somasegar, F# - A functional Programming Language, su blogs.msdn.com. URL consultato il 18 ottobre 2007.

Voci correlate

[modifica | modifica wikitesto]

Altri progetti

[modifica | modifica wikitesto]

Collegamenti esterni

[modifica | modifica wikitesto]
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica