JavaScript как новый язык ассемблера
Aug. 13th, 2012 09:53 amaltsoph @ 2012-08-13 09:41:00:
Мэтью Генри aka P01 сделал JS-браузерную дему MATRAKA с 3D-графикой, музыкой и текстом, которая представляет собой 1K PNG-файл, самораспаковывающийся в JavaScript-код:
А кроме того:
- упрощенный тетрис, 140 байт (играть, код);
- ASCII-рендеринг мандельброта, 117 байт (смотреть), и анимированная зумящаяся версия, 256 байт (смотреть);
- ASCII-рейтрейсинг шахматной доски в 3D, 128 байт (смотреть);
- сапёр, 125 байт (играть, код);
- пятнашки, 130 байт (играть, код);
- шахматы, 1K (играть);
- решатель судоку, 141 байт (код);
- игра "жизнь", 135 байт (смотреть, код);
- питончик, 136 байт (играть, код);
- синтезатор речи на Canvas, 1K (попробовать);
- генератор музыки, 138 байт (попробовать);
- клон вульфенштейна, 1K (играть);
- рендеринг трехмерного фрактала Серпинского, 284 байта (смотреть);
- mars.com, 256 байт (смотреть);
- ASCII-туннель + бегучка, 256 байт (смотреть);
- пинг-понг внутри фавиконки, 10K (смотреть).
Что еще почитать:
- тусовка 140-байтников на JS и список приёмов от них же.
- спецификация и компилятор JS-ASM;
- пруф возможности свести любой JS-код к набору из 8 символов (три пары скобок, плюс, восклицательный знак) + работающий прототип обфускатора (инфобезу на заметку);
- сайт ежегодного соревнования JS1k.
И, да, все ссылки работают у меня в Хроме, на кроссбраузерность не проверял.