Allison Randal, Dan Sugalski, Leopold Tötsch
Perl 6 Essentials

O'Reilly - 2003 - 24,95 USD
ISBN:0596004990
© 2003 Perl Mongers Italia. Tutti i diritti riservati.

Recensione di larsen [Voto:4/5]

Recensendo un testo del genere forse è meglio partire con una precisazione, piuttosto che con una introduzione, a beneficio di chi può essersi stupito per la pubblicazione di un libro su un linguaggio che in parte non esiste e di cui soprattutto non esiste alcuna implementazione. I volumi della serie Essentials di O'Reilly si propongono di fornire una panoramica delle nuove tecnologie in maniera abbastanza accurata da consentirne una valutazione tecnica. Non sono manuali.

Nel caso di Perl 6 non si può ancora parlare di tecnologia consolidata: la fase di disegno del linguaggio non è conclusa, e l'unica parte davvero tangibile del progetto è Parrot, la virtual machine sulla quale girerà Perl 6 (e non solo).

L'obiettivo di Perl 6 Essentials non è quindi l'obiettivo di un manuale: anche se ``Perl rimarrà Perl'', e malgrado il fatto che la mole di materiale su Perl 6 non giustifichi, per ora, un volume delle dimensioni di Programming Perl, i nuovi aspetti della sesta release del linguaggio sono già abbastanza da rendere utile un volumetto di neanche 200 pagine come questo: per rimanere aggiornati o come trampolino per unirsi al team degli sviluppatori. Sommessamente avanzo inoltre l'ipotesi che questo libro sia stato pubblicato per far vedere che qualcosa succede, dopo 3 anni dall'inizio dello sviluppo di Perl 6.

I primi quattro capitoli riguardano il processo di sviluppo di Perl 6 (comprese indicazioni per chi volesse partecipare attivamente), i principi linguistici e filosofici che ne stanno guidando il design, e infine la sintassi. Quest'ultima parte (il quarto capitolo) è la più interessante: anzichè descrivere le differenze con Perl 5, gli autori immaginano di poter dare uno sguardo alla futura edizione di Programming Perl. Immaginando di vederla da lontano, nello spazio e nel tempo.

Spesso leggendo i resoconti di chi partecipa ai seminari di Damian Conway su Perl 6 si sentono cose di questo genere: ``Ero preoccupato per tutti questi cambiamenti, ma questo seminario mi ha rassicurato''. Non si può dire che il quarto capitolo sia altrettanto rassicurante: i cambiamenti e le novità sono molteplici, e gli esempi forniti sono così brevi e focalizzati a mostrare tali novità da ridurre la sensazione di familiarità con il linguaggio. È però una lettura entusiasmante, che rende impazienti di provare le nuove caratteristiche.

La prima parte di Perl 6 Essentials è come la guida turistica di una località esotica: non è detto che la si visiterà in tempi prossimi, ma tanto vale essere preparati. E la lettura è in ogni caso avvincente.

Il testo prosegue parlando di Parrot, al quale è dedicato il resto del libro, un po' più della metà. È in questa sezione che il libro assomiglia di più ad un manuale, e il libro si rivela utile anche per chi vuole ``pestare sui tasti''. Dopo una carrellata sull'architettura di Parrot, ben organizzata e scritta, si passa alla descrizione del linguaggio assembly della macchina virtuale, comprendente una Quick Reference, per finire con un capitolo su IMCC (Intermediate Code Compiler).