Abo
  • Services:

Facebook: Programmiersprache Hack offiziell verfügbar

Facebook hat seine PHP-basierte Programmiersprache Hack offiziell als Open Source allgemein verfügbar gemacht. In der PHP-Community dürfte die Sprache eine lebhafte Diskussion auslösen.

Artikel veröffentlicht am , hw/
Hacker Way 1: Facebooks Hauptsitz
Hacker Way 1: Facebooks Hauptsitz (Bild: Harald Weiss)

Laut Facebooks Entwicklungsingenieur Julien Verlaguet ist Hack eine Synthese aus PHP und den starken statischen Typdefinitionen, wie sie bei C# oder Java der Fall sind. Ziel ist es, dass die Entwickler weiterhin wie gewohnt in PHP programmieren, aber zu einer sauberen Programmierung gezwungen werden. Insbesondere durch erzwungene Typdefinitionen der Übergabewerte bei Funktionen und Methoden sowie der Rückgabewerte sollen Laufzeitfehler reduziert und die Code-Inspektion vereinfacht werden.

Stellenmarkt
  1. SCHUFA Holding AG, Wiesbaden
  2. AKDB, München, Nürnberg

Das vereinfacht die Definition und Nutzung von APIs. "Im Wesentlichen zielt Hack darauf ab, PHP mit statischer Typisierung zu erweitern, beispielsweise lassen sich damit auch Klassen anlegen und der zugehörige Type-Checker prüft vorher auf eventuelle Typenkonflikte", schreibt Verlaguet in seinem Blog.

Da assoziative Arrays als beliebte Funktions- und Rückgabeparameter das Konzept der statischen Typisierung unterlaufen können, implementiert Hack auch neue Sprachelemente (Shapes und Tuples) sowie Datentypen (Collections), um die Typsicherheit auch für solche Fälle sicherzustellen.

Um Klassenmethoden trotz starker Typisierung flexibel zu halten, können generische Definitionen verwendet werden - entsprechend den Generics in Java und C#.

Anonyme Funktionen (Closures) beherrscht PHP bereits, in Hack ist ihre Nutzung in Form von Lambda-Ausdrücken aber deutlich dem näher, was Programmierer zum Beispiel von Javascript kennen.

Weitere Eigenschaften von Hack sind asynchrone Funktionen und Traits für die klassenbasierte Wiederverwendung von Funktionen.

Hack läuft auf der Hiphop Virtual Machine (HHVM) von Facebook. Auch diese steht als Open Source zur Verfügung. Die HHVM-Plattform kann auch ohne Hack mit reinen PHP-5-Programmen genutzt werden. Verlaguet verweist in seinem Blog darauf, dass Facebook selbst eine Reihe an Fremdbibliotheken verwendet, die ausschließlich in PHP 5 programmiert sind.

Der Grad der Nutzung von Hack ist dem einzelnen Programmierer oder Projekt überlassen und kann auch noch später abgeändert werden. Das erlaubt weiterhin ein schnelles Prototyping und eine spätere Strukturverbesserung. Facebook spricht hier von der ersten industriellen Implementation von "graduellem Typing". Doch Infoworld berichtete schon 2012, dass Microsoft mit Typescript eine ähnliche Technologie auf den Markt gebracht hat, bei der die Vorteile von Javascript mit denen von Java oder C++ vereint wurden. Microsoft nennt Typescript nicht eine eigene Programmiersprache, sondern ein Superscript.

Programmiersprache oder nur Erweiterung?

Facebook spricht bei Hack auch gelegentlich von PHP-Zusätzen. Damit drängt sich die Frage auf, ob es sich bei Hack wirklich um eine neue Programmiersprache handelt oder ob es nur eine umfangreiche PHP-Erweiterung ist. In der PHP-Gemeinde wird Hack auf jeden Fall viele Diskussionen auslösen. Einige Features von Hack wurden auch immer wieder für PHP selbst diskutiert. Doch häufig gab es den Konsens, mit PHP nicht Java kopieren zu wollen.



Anzeige
Spiele-Angebote
  1. 4,95€
  2. 19,99€
  3. (mindestens 16,15€ bezahlen und Vegas Pro 14 EDIT und Magix Video Sound Cleaning Lab erhalten)
  4. 39,99€

TheUnichi 24. Mär 2014

Das sagt sich so einfach, so wie sich auch heute die ganzen Node.js-ler sagen "PHP ist...

Schattenwerk 24. Mär 2014

Ach so, der einzige Grund von einer starken Typisierung ist also Performance? Dachte da...

tibrob 22. Mär 2014

Das liegt dann an deinem Spaghetti-Code ... Man kann durchaus alle Eingaben brauchbar...


Folgen Sie uns
       


Kabellose Bluetooth-Ohrstöpsel - Test

Wir haben vier komplett kabellose Bluetooth-Ohrstöpsel getestet. Mit dabei sind Apples Airpods, Boses Soundsport Free, Ankers Zolo Liberty Plus sowie Googles Pixel Buds. Dabei bewerteten wir die Klangqualität, den Tragekomfort und die Akkulaufzeit sowie den allgemeinen Umgang mit den Stöpseln.

Kabellose Bluetooth-Ohrstöpsel - Test Video aufrufen
Datenverkauf bei Kommunen: Öffentliche Daten nicht verhökern, sondern sinnvoll nutzen
Datenverkauf bei Kommunen
Öffentliche Daten nicht verhökern, sondern sinnvoll nutzen

Der Städte- und Gemeindebund hat vorgeschlagen, Kommunen sollten ihre Daten verkaufen. Wie man es auch dreht und wendet: Es bleibt eine schlechte Idee.
Ein IMHO von Michael Peters und Walter Palmetshofer

  1. Gerichtsurteil Kein Recht auf anonyme IFG-Anfrage in Rheinland-Pfalz
  2. CDLA Linux Foundation veröffentlicht Open-Data-Lizenzen
  3. Deutscher Wetterdienst Wetterdaten sind jetzt Open Data

Dell XPS 13 (9370) im Test: Sehr gut ist nicht besser
Dell XPS 13 (9370) im Test
Sehr gut ist nicht besser

Mit dem XPS 13 (9370) hat Dell sein bisher exzellentes Ultrabook in nahezu allen Bereichen überarbeitet - und es teilweise verschlechtert. Der Akku etwa ist kleiner, das spiegelnde Display nervt. Dafür überzeugen die USB-C-Ports, die Kühlung sowie die Tastatur, und die Webcam wurde sinnvoller.
Ein Test von Marc Sauter und Sebastian Grüner

  1. Ultrabook Dell hat das XPS 13 ruiniert
  2. XPS 13 (9370) Dells Ultrabook wird dünner und läuft kürzer
  3. Ultrabook Dell aktualisiert XPS 13 mit Quadcore-Chip

HTC Vive Pro im Test: Das beste VR-Headset ist nicht der beste Kauf
HTC Vive Pro im Test
Das beste VR-Headset ist nicht der beste Kauf

Höhere Auflösung, integrierter Kopfhörer und ein sehr bequemer Kopfbügel: Das HTC Vive Pro macht alles besser und gilt für uns als das beste VR-Headset, das wir bisher ausprobiert haben. Allerdings ist der Preis dafür so hoch, dass kaufen meist keine clevere Entscheidung ist.
Ein Test von Oliver Nickel

  1. VR-Headset HTCs Vive Pro kostet 880 Euro
  2. HTC Vive Pro ausprobiert VR-Headset hat mehr Pixel und Komfort
  3. Vive Focus HTC stellt autarkes VR-Headset vor

    •  /