Comments 35
Темы с очередными интерпретаторами Brainfuck уже выебали мозг больше, чем сам Brainfuck
+13
Напишите уже ктонить интерпретатор C# на brainfuck, а не наоборот *irony*
+5
Теги code рулят.
+7
Как пропатчить kde2 под freebsd?
0
Brainfuck week at Habrahabr has already fucked my brain.
+1
Может хватит?
+3
жду брэйнфак на брэйнфаке
0
Уже куча их написана esolangs.org/wiki/Brainfuck#Self-Interpreters
Рекомендую посмотреть этот, он с комментариями homepages.xnet.co.nz/~clive/eigenratios/cgbfi2.b
Рекомендую посмотреть этот, он с комментариями homepages.xnet.co.nz/~clive/eigenratios/cgbfi2.b
0
/me бурчит
А аккумулятор на текущую операцию?
Я понимаю, что пост получился бы длиннее, но это можно было бы реализовать в сорцах, на которые вы дали ссылку.
А аккумулятор на текущую операцию?
Я понимаю, что пост получился бы длиннее, но это можно было бы реализовать в сорцах, на которые вы дали ссылку.
+1
BrainF#? Даешь полную интеграцию с CLR! :-)
0
А в памяти сборку можно запустить, не сохраняя на диск? Этакий JIT бы получился…
+1
Качество кода… ну это просто нечто!
0
Блять, напишите уже компилятор/интерпретатор Brainfuck на Brainfuck и успокойтесь…
-2
UFO just landed and posted this here
Вроде бы неделя уже закончилась
+1
brain# .NET
+1
Хочу еще увидеть замеры в приросте производительности. Насколько быстрее будет работать скомпилированная программа от интерпритатора. Сколько съест памяти.
0
Компилятор Brainfuck…
Not this shit again…
+1
Компилятор это интересно. Только не совсем понятно, чем обусловлено ограничение в 30000 байт? Оно же не дос-приложение создает, где сегмент кода ограничен 64Kb… Не знаю, из-за этого ли, но мой любимый тест на скорость выполнения:
Трапнулся:
Можно как-то поправить, чтоб заработало? Интересно таки сравнить скорость откомпилированного теста и интерпретируемого.
И еще пожелание — чтобы имя файла с кодом на брейнфаке передавать в первом параметре, а не ждать ввода вручную. Чтобы запускать так: BrainFuckCompiler.NET.exe <имя файла.bf>
>+>+>+>+>++<[>[<+++>-
>>>>>
>+>+>+>+>++<[>[<+++>-
>>>>>
>+>+>+>+>++<[>[<+++>-
>>>>>
>+>+>+>+>++<[>[<+++>-
>>>>>
+++[->+++++<]>[-]<
<<<<<
]<<]>[-]
<<<<<
]<<]>[-]
<<<<<
]<<]>[-]
<<<<<
]<<]>.
Трапнулся:
Можно как-то поправить, чтоб заработало? Интересно таки сравнить скорость откомпилированного теста и интерпретируемого.
И еще пожелание — чтобы имя файла с кодом на брейнфаке передавать в первом параметре, а не ждать ввода вручную. Чтобы запускать так: BrainFuckCompiler.NET.exe <имя файла.bf>
+2
А, еще забыл совсем — при выводе символа не нужно переводить каретку на новую строку. А то из простого Hello World! получается такое:
H
e
l
l
o
w
o
r
l
d
!
H
e
l
l
o
w
o
r
l
d
!
0
А что она делает? Штук 5 brainfuck online interpreters тупо зависали…
0
Если в кратце — просто гоняет много вложенных друг в друга циклов. В конце работы выводит символ ╩
+1
Да, спасибо, уже проверил. Моя реализация на mercury гоняла его 4мин 42 сек, не знаю, на сколько это хороший/плохой результат )
+1
Ну сравните ради эксперимента с моим JIT (или AOT)-интерпретатором: rghost.ru/4249797
Так, на моей рабочей лошадке AMD 64 3000+ (немного разогнан до 2,2Ghz) этот код выполняется за 2-3 секунды.
Так, на моей рабочей лошадке AMD 64 3000+ (немного разогнан до 2,2Ghz) этот код выполняется за 2-3 секунды.
+1
Весьма интересно. Надо попробовать в мою программу добавить похожие оптимизации.
0
Попробуйте, я вот здесь немного подробнее написал habrahabr.ru/blogs/development/113339/ (вдруг не видели)…
0
UFO just landed and posted this here
я написал транслятор брейнфака в nasm, скормил ему dbfi:
disk.tom.ru/g48ssfe
usage:
disk.tom.ru/g48ssfe
usage:
$ nasm -f elf dbfi.asm
$ ld -s -o dbfi dbfi.o
$ ./dbfi
++++++++++[>+++++++>++++++++++>+++>+\
<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++\
++++++.>.+++.------.--------.>+.>.!
Hello World!
$
+2
Sign up to leave a comment.
Компилятор Brainfuck в .NET