Una piacevole novità ci attende al rientro dalle ferie (per chi ci è andato :-)): è stata rilasciata la CTP di F# (Community Technology Preview – versione 1.9.6.0), annunciata attraverso il nuovo Development Center MSDN di F# ed il blog del “padre” di F#, Don Syme.

F# è un linguaggio funzionale efficiente, conciso ed object-oriented sviluppato grazie alla collaborazione fra la Divisione Sviluppo di Microsoft e Microsoft Research; trovate una breve introduzione in questo mio post in cui discutevo anche la relazione fra F# e LINQ.

In occasione del post di oggi sul rilascio della CTP, vi segnalo una delle caratteristiche esclusive di F# rispetto agli altri linguaggi .NET, che permette la scrittura di istruzioni “al volo” interattive ed esplorative: lo Scripting.

Immaginiamo di dover provare un pezzo di codice svincolato da un progetto specifico; ebbene, se si trattasse di un’applicazione Windows Form o altro tipo di progetto Visual Studio, dovremmo iniziare con il creare un nuovo progetto e relativa solution; dopodiché, probabilmente apriremmo il designer  in cui dovremmo poi tirar dentro un bottone, doppiocliccarlo per richiamare l’event handler corrispondente, impostare un breakpoint per esplorare le variabili e via dicendo. Gli script file di F# invece permettono di scrivere codice in un file svincolato da un progetto ed eseguirlo –eventualmente solo per la porzione che avete selezionato- premendo ALT-INVIO nella finestra interattiva. Proviamo a farlo in 10 secondi?

  • Creiamo un nuovo file di tipo Script/F# (non serve avere un progetto aperto, basta la schermata principale di Visual Studio e premere Ctrl+N – nuovo file)
  • Scriviamoci dentro l’istruzione System.Windows.Forms.MessageBox.Show("Salve a tutti")
  • Portiamo in primo piano la finestra interattiva di F# (Ctrl+Alt+F)
  • Selezioniamo il codice (se volete con Ctrl+A per selezionarlo tutto) e premiamo Alt+Invio

helloWorld

That’s all folks!

 

Lo scripting che abbiamo visto oggi ci avvicina alla programmazione F# con cautela e un risultato immediato; per onor di cronaca ed evitare misunderstanding devo però aggiungere che questo rilascio include fra i suoi punti di forza un nuovo e migliorato sistema di gestione del progetto che permette lo sviluppo su larga scala di software a componenti, che farà sentire “a casa” i programmatori Visual Studio; interessante, a questo proposito, la panoramica offerta da Brian McNamara sulle property page del progetto.

Da ultimo ma non per ultimo in questa carrellata di novità, il servizio F# che fornisce intellisense e “type tips” migliorati ed affidabili, oltre ad una compilazione in background più fluida.

Se questo post vi ha incuriosito, non rimangono altre barriere oltre a questi 13 MB di installazione per iniziare ad esplorare l’affascinante mondo della programmazione funzionale, che presto o tardi e soprattutto in vista dell’arrivo di nuovi processori a 80 core da 2 Teraflop, non credo potremo esimerci tutti dal conoscere.

f#CTP1.9.6.0_FinalSetup

Arrivederci alla prossima puntata

 

mauro