JavaScript является одним из наиболее мощных, выразительных и многофункциональных языков. На сегодняшний день создано огромное количество модулей, фреймворков и библиотек, которые позволяют использовать его почти во всех сферах программирования — от веб-разработки до программирования микроконтроллеров.
Однако одна из важнейших сфер до сих пор оставалась за бортом — это низкоуровневое программирование. Это неудивительно — для низкоуровневой разработки требуется несколько иной подход, чем предлагает JavaScript. Статическая типизация, ручное управление памятью и многое другое необходимо для того, чтобы создавать по-настоящему низкоуровневые программы. Недавно некоторые разработчики решили исправить это, создав экспериментальный низкоуровневый язык ThinScript. Он заинтересует вас, если вам приходилось писать на C, C++, Rust, D или подобном, однако если вы никогда не писали на низкоуровневых языках, вряд ли вы найдёте что-то для себя в нём.
Описание
ThinScript вдохновлён TypeScript, а значит сохраняет все лучшие стороны JavaScript, сочетая их со статической типизацей. ThinScript компилируется в один из трёх форматов — JavaScript, WebAssembly и C. Последний наиболее интересен. Фактически, это означает, что вы можете создавать любые низкоуровневые программы (например, драйвера для любых устройств), используя расширенный синтаксис JavaScript. Для примера, давайте рассмотрим такой код, написанный на ThinScript:

Стоит отметить, что ThinScript является недавно появившимся экспериментальным языком, а потому его не рекомендуется использовать в важных проектах. Тем не менее, язык развивается быстро, так что у него есть все шансы скоро добраться до релиза. Если вас заинтересовал ThinScript, то вы можете прочесть о нём больше на официальной странице GitHub — https://github.com/evanw/thinscript.