Facebook rilascia Hack, un nuovo linguaggio di scripting open source


Facebook ha annunciato "HACK", un nuovo linguaggio di scripting open source, concepito per superare i limiti di PHP. L'annuncio è stato fatto sul blog della società di Menlo Park. "Oggi stiamo rilasciando Hack, un linguaggio di programmazione che abbiamo sviluppato per HHVM che interagisce perfettamente con PHP. Hack riconcilia il ciclo di sviluppo rapido di PHP con la disciplina prevista dalla tipizzazione statica  mentre aggiunge molte funzioni che si trovano comunemente in altri linguaggi di programmazione moderni". 

"Abbiamo implementato Hack in Facebook ed è stato un grande successo. Nel corso dell'ultimo anno, abbiamo migrato quasi tutta la nostra base di codice PHP in Hack, grazie sia all'adozione organica e una serie di strumenti di refactoring nostrani". Il social network dice che usa Hack per ogni sorta di cose, e piace perché riduce la probabilità di errori semplici che rallentano il processo di sviluppo. "Ogni programmatore PHP conosce giorno per giorno le attività che possono essere complicate o ingombranti".

"Il codice di cui sopra - spiega ancora Facebook - è un grande esempio di un errore comune in cui un metodo potrebbe improvvisamente essere chiamato su un oggetto null, causando un errore di cui non si sarebbe accorto fino al runtime. Un altro esempio è un API complessa, dove gli sviluppatori possono avere una solida conoscenza della sua semantica, ma ancora passare il tempo guardando i nomi dei metodi banali nella documentazione". L'idea alla base del linguaggio è quella di combinare uno più statico come C con uno più dinamico come PHP.


"Tradizionalmente, i linguaggi dinamicamente tipizzati consentono un rapido sviluppo, ma sacrificano la capacità di rilevare gli errori presto e introspezione del codice rapidamente, in particolare su basi di codice di grandi dimensioni. Viceversa, linguaggi staticamente tipizzati forniscono più di una rete di sicurezza, ma spesso a costo di iterazione pratica. Abbiamo creduto che ci doveva essere un punto debole. Così, Hack è nato. Crediamo che offre il meglio di entrambi  i linguaggi tipizzati dinamicamente e staticamente tipizzati, e che sarà prezioso per progetti di ogni dimensione". 

"Hack ha radici profonde in PHP. In realtà, la maggior parte dei file PHP sono già validi file Hack. Abbiamo fatto una scelta consapevole di non sostenere una manciata di funzioni e characteristic deprecated che fossero incompatibili con la tipizzazione statica (ad esempio 'variable variables' e la funzione extract(). Abbiamo anche aggiunto molte nuove caratteristiche che crediamo contribuiranno a rendere gli sviluppatori più produttivi". Facebook sottolinea che la principale aggiunta di Hack è proprio la tipizzazione statica. 

Tuttavia, Hack aggiunge funzionalità aggiuntive al di là del type check statico, tra cui Collections, lambda expressions, e run-time enforcement del return types e parameter types. Le basi di Hack sono state sviluppate dagli ingegneri Bryan O'Sullivan, Julien Verlaguet e Alok Menghrajani. Facebook ha anche lanciato un Developed Day per spiegare il nuovo sistema operativo. Il linguaggio Hack è scritto principalmente in OCaml, mentre HHVM è una macchina virtuale open-source progettata per l'esecuzione di programmi scritti in Hack e PHP.


Via: Facebook

Nessun commento:

Posta un commento