|
Recensione di larsen
24/10/2003
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).
|