F#, il linguaggio funzionale-imperativo
Antonio Cisternino
Ricercatore
Dipartimento di Informatica
Università di Pisa
Agenda
• Il linguaggio F#
• Il toolset
• Demo
–F# bits
–F# interactive
–VSLab
• Applications and performances
F#
• F# nasce come un port del linguaggio
OCaml per .NET
• Don Syme lavora su un’estensione
all’IL, ILX, per supportare
l’interoperabilità tra linguaggi
funzionali
• Introduce nel mainstream della
programmazione concetti studiati per
20 anni nell’accademia
Caratteristiche
• Type-inference
• Stile di programmazione funzionaleimperativo
• Influenzato da Haskell
• Supporto per la meta-programmazione
• Supporto OOP completo e diverso da
OCaml
• Integrazione completa in .NET
• Il patten matching
Il toolset
• Integrazione in Visual Studio
completa di IntelliSense
• Type inference integrata nell’editor
• Debugger .NET
• F# Interactive!!!
• Esecuzione da command line
• Supporto per Mono
Demo
F#, il linguaggio funzionaleimperativo
Applicazioni
• Unmutable state -> concorrenza
• Facilità di esprimere formule
matematiche -> Scientific Computing
• Interattività -> Scripting e system
management
F# on mono
More information
Conclusioni
Per la prima volta dai tempi di Java ho guardato un
linguaggio ed ho realizzato che era un salto, che non
avrei più programmato volentieri in linguaggi usati
fino ad allora e che mi sembravano molto espressivi.
F# è l’anello mancante tra i linguaggi compilati e
quelli dinamici.
Antonio CIsternino
Scarica

Document