Доклад

Типизируем eval и new Function: JavaScript-интерпретатор на типах TypeScript

  • На русском языке

Многие слышали, что система типов TypeScript является Тьюринг-полной, но что это значит? Если коротко, с ее помощью можно реализовать любой конечный алгоритм, в том числе интерпретатор JavaScript. Это мы с вами и попробуем сделать, научившись вычислять значения eval и new Function на этапе компиляции при помощи программирования на уровне типов (type-level programming).

Вы подумали, что задача слегка безумна и результат не имеет практической ценности? TypeScript не является типобезопасным языком, поэтому крайне важно понимать возможности и ограничения его системы типов, а для этого задача подойдет отлично. А еще это просто весело! Во время решения обсудим полезные правила написания удобных и безопасных типов. Из доклада вы узнаете больше о системах типов в программировании, функциональном подходе и устройстве JavaScript-движков.

Спикеры

Доклады