Новый язык Hack является прямым потомком PHP, основанным на его синтаксисе. Hack создан специально для виртуальной машины HHVM (Hip Hop Virtual Machine). Команда Facebook полностью перевела разработку на новый язык и называет эту миграцию большим успехом. Однако Facebook не отказывается от поддержки PHP и планирует доработать поддержку PHP5 в HHVM.
Подробная документация по языку доступна здесь (на английском языке).
Официальный сайт нового языка — http://hacklang.org/.
Новость о релизе языка.

Пример кода

<?hh
class MyClass {
  public function alpha(): int {
    return 1;
  }

  public function beta(): string {
    return 'hi test';
  }
}

function f(MyClass $my_inst): string {
  // Fix me!
  return $my_inst->alpha();
}

Возможности нового языка

Основной особенностью Hack стала реализация статической типизации. Это потребовало отключения некоторых возможностей языка, таких как переменная в переменной $$ и функция extract (неявное создание переменных в таблице символов из массива).
Также было внедрено множество фичей из современных языков программирования: обобщенное программирование, псевдонимы типов, обнуляемые типы и ограничения на параметры типов, коллекции, лямбды, а также проверка возвращаемых типов и типов параметров во время выполнения.
Типы проверяются специальным сервером (сервисом, демоном), который следит за изменением файлов исходного кода на диске.
Каким образом оповещается программист, пока не ясно, но вместе с Hack в комплекте идет несколько инструментов.

http://habrahabr.ru/post/216727/?utm_source=twitterfeed&utm_medium=habrahabr&utm_campaign=twitter

Вверх