[Firenze-pm] Perl 6

dakkar dakkar at thenautilus.net
Sat Feb 24 02:33:39 PST 2007


alessandro kirk wrote:
> Quali altre caratteristiche trovate degne di nota?

Beh, che ha un sistema a oggetti (quello di Perl 5 è un trucco), che può
essere usato come un linguaggio tipato, che ha il supporto Unicode a
tutti i livelli, etc etc etc (ci stiamo una settimana se le racconto tutte).

> Il mio dubbio è che quando uscirà passerà molto tempo prima che venga
> adottato dai provider ... (basti pensare a quello che è successo con Php
> 5 che non ha portato cambiamenti realmenti rivoluzionari rispetto alla
> vers. 4 eppure la sua adozione è stata molto lenta).

Proprio perché non ha cambiato nulla, nessuno lo usa. Ok, PHP 5 è un
linguaggio quasi usabile (namespace, oggetti...), ma nessuno se n'è
accorto: il programmatore PHP tipico lo usa come un linguaggio di
templating con un po' di accesso a un database (che poi è quello per cui
è nato PHP).

Perl 6 è un linguaggio *diverso* da Perl 5. Non sono compatibili, quasi
per niente.

Detto questo, si suppone che il compilatore Perl 6 abbia una qualche
capacità di compilare e eseguire codice Perl 5 (alla peggio, usando
libperl).

Tieni anche conto che, dall'uscita di Perl 5 alla sua diffusione è
passato un po' di tempo (e si trovano ancora programmi scritti in Perl
4, o almeno in quello stile).

> Per consentirne una diffusione più veloce, mantenendo la completa
> compatibilità senza dover fare nessuna riscrittura del codice, sarebbe
> possibile indicare la vers. di Perl usata nello script?

Semmai, la versione di Perl per cui lo script è scritto ;-) Cmq, l'idea
è che il compilatore Perl 6 indovinerà se sta vedendo codice Perl 5, e
agirà di conseguenza.

> Per trasparente intendo usare due vers. di Perl, minime o nessuna
> modifica nell'interfacciamento Perl e FastCGI, reindirizzamento
> automatico all'uso di uno o l'altra vers. Perl installata sul server.

No su tutti i fronti. Questa "trasparenza" di cui parli non c'entra
nulla col linguaggio.

Innanzi tutto, Perl non è fatto per il Web (PHP sì, invece). Perl è un
linguaggio generale: io ci ho scritto applicazioni desktop, lo uso per
automatizzare la gestione dei server, smistarmi la posta, filtrare la
pubblicità, e un mucchio di altra roba.

Secondariamente, FastCGI è un protocollo di rete: con che linguaggio lo
usi non fa nessuna differenza (es. ad Apache non importa se la cosa che
risponde dall'altra parte della socket è scritta in C, Perl, Python,
Java, o quel che vuoi).

"reindirizzamento" non vuol dire nulla: se intendi "ho un'applicazione
web scritta in Perl 5 che serve risorse sotto una certa URL, e una in
Perl 6 che serve risorse sotto un'altra URL", mi spieghi cosa c'entra
(di nuovo) Perl? Chiedere una URL o l'altra sono problemi del browser;
chiedere i dati per le URL sono problemi del server Web; le due
applicazioni non si vedono proprio!

Suggerimento: studia almeno le basi di HTTP e di CGI, scrivi un paio di
CGI in Bash o C (senza librerie apposite! bastano un paio di print)
giusto per vedere cosa succede "sotto", poi ne riparliamo ;-)

-- 
	Dakkar - <Mobilis in mobile>
	GPG public key fingerprint = A071 E618 DD2C 5901 9574
	                             6FE2 40EA 9883 7519 3F88
	                    key id = 0x75193F88

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
Url : http://mail.pm.org/pipermail/firenze-pm/attachments/20070224/551d1c16/attachment.bin 


More information about the Firenze-pm mailing list