Da qualche tempo girano sulla rete varie discussioni riguardo l'implementazione della nuova major version di PHP. C'è chi dice verrà sviluppata per compilare bytecode per Parrot, la virtual machine open source che si propone come ottimo sistema con l'obiettivo di far cooperare diversi linguaggi tra loro (l'implementazione standard è per Perl ma c'è chi ha già pensato ad implementare il compilatore per Python).Dato che a pochi eletti è dato sapere cosa accadrà realmente, ci limitiamo a leggere alcuni ragionamenti scovati per la rete: in questa discussione, iniziata da Rasmus Lerdorf un mesetto fa, si parla di quali feature ormai obsolete eliminare in PHP6; anche Marco Tabini ragiona su questo argomento traendo delle interessanti conclusioni. Il problema di tutte queste innovazioni è che, purtroppo, comporteranno l'incompatibilità degli attuali script PHP. C'è da dire che alcune innovazioni, quale il supporto per Unicode, sono necessarie per tenere passo con i concorrenti. Staremo a vedere ...

Continua a leggere Discutendo PHP6

Categoria: PHP e Open Source

Unicode è un sistema che permette di associare a molti caratteri e simboli un numero univoco indipendente dalla lingua, dalla piattaforma e dall'applicativo. Con il passare degli anni si è affermato come standard e molti linguaggi hanno iniziato ad includerene il supporto nativamente. Si pensi per esempio a Python o a Java che includono un ottimo set di librerie per la gestione unicode.Purtroppo PHP non sembra voler seguire la moda, e continua a gestire le stringhe come se fossero tutte sequenze di caratteri ascii, lasciando all'utente il dovere di implementare sistemi per la gestione di lingue che richiedono charset multibyte. A dir la verità tra le estensioni di PHP troviamo qualche libreria utile per la gestione di queste situazioni (si pensi alla libreria mbstring o al supporto per le librerie iconv), ma spesso gli hoster non ne abilitano il supporto.In molti si sono mossi al fine di convincere il team di sviluppo di PHP ad includere il supporto nativo per unicode, ma a quanto pare l'operazione sembra essere più complicata del previsto e comunque gli sviluppatori sono frenati dai problemi che portò a suo tempo l'implementazione del supporto nativo per unicode in Perl.Fortunatamente qualcosa sembra muoversi all'orizzonte: probabilmente PHP 6 si baserà su Parrot, un'efficiente virtual machine multipiattaforma creata per supportare i moderni linguaggi di scripting. La VM in questione supporta nativamente unicode, quindi molti dei nostri problemi potrebbero risolversi tra qualche anno ...Speriamo che tutto avanzi come previsto, e nel frattempo continuiamo ad occuparci dell'implementazione dei nostri sistemi hand-made per la gestione dello unicode.

Continua a leggere Supporto nativo per Unicode

Categoria: PHP e Open Source