Pull to refresh

Comments 11

Для того, чтобы запускать форум на BrainFuck интерпретатором на Assembler?)

А почему для [+] и [-] были выбраны триграфы, а не пара вида { и }?

Это 3 разные инструкции языка, которые приводят к обнулению ячейки, а не одна инструкция. Это означает, что инструкция + или - будет выполняться до тех пор, пока значение текущей ячейки не равно нулю. Поскольку bf использует минимальное количество инструкций, то добавлять новую инструкцию для операции обнуления нет смысла.

UFO just landed and posted this here
Не, не компилятор брейнфака в x86, а бекенд, который будет генерировать брейнфак :)

Лет 5-6 назад на Хабре была целая неделя Brainfuck'a — народ писал интерпретаторы/компиляторы для различных платформ/языков/виртуальных машин. Эх, были времена...

UFO just landed and posted this here

Я как-то писал вроде самый пока сильно оптимизирующий интерпретатор/компилятор —https://github.com/bolknote/brainfuck. По ссылке его порт с JS. Основной приход с развёртки циклов в конструкции без циклов. Правда я его подзабросил, надоело, в нём так и остались неисправленные баги.

Sign up to leave a comment.

Articles