Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт апр 25, 2024 05:51

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Эзотерическое программирование ( Brainfuck, Befunge ... )
СообщениеДобавлено: Пн окт 08, 2007 15:06 
Не в сети
Moderator
Moderator

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
Встретился архив

The Brainfuck Archive
http://esoteric.sange.fi/brainfuck/

P.S. Это развлечение или бывают серьезные последствия:)


Последний раз редактировалось Kopa Вт янв 15, 2008 09:43, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 08, 2007 23:03 
Не в сети

Зарегистрирован: Чт май 04, 2006 18:18
Сообщения: 456
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
Конечно бывают. В психушке.

_________________
http://forth.org.ru/~ygrek


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт окт 09, 2007 07:08 
Не в сети
Moderator
Moderator

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
Если немного продолжить, то не все так безнадежно.:)

Мегапроект! Транслятор человеческого языка в Brainfuck!
на базе BFforth

http://community.livejournal.com/ru_brainfucker/969.htm

P.S. НеШуточный:) проект в живом журнале.
Есть даже сообщество http://community.livejournal.com/ru_brainfucker/


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Полезные ссылки на мозго%б
СообщениеДобавлено: Вт окт 09, 2007 09:11 
Не в сети

Зарегистрирован: Вт авг 08, 2006 13:49
Сообщения: 47
Благодарил (а): 2 раз.
Поблагодарили: 1 раз.
Brainfuck еще тот зверек :) Гляньте, кому интересно, на статью с описанием его самокомпилятора http://www.progz.ru/articles.php?view=19 Забавное, на мой взгляд, чтение (хотя лучше читать оригинал на английском - ищется элементарно). В конце статьи - ссылки, следуя которым можно найти много примеров программ (например, среди них построение множества Мандельброта, вычисления числа "пи" и проч.).
И еще - есть сайт Евгения Степанищева, посвященный brainfuck: http://bf.kzn.ru/jbf.htm
Перевод Brainfuck полностью соответствует своему названию: мозг выворачивает по серьезному, но если врубиться, то начинает даже нравится (впрочем, тут кому как)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт янв 15, 2008 09:17 
Не в сети
Moderator
Moderator

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
Тоже из серии эзотерики, но со стеком:)

http://ru.wikipedia.org/wiki/Befunge
http://catseye.tc/projects/befunge93/ ( и другие эзотерические ресурсы)

Краткая выдержка из wikipedii

"Befunge — стековый, эзотерический язык программирования. Считается двумерным, так как программа на Befunge записывается в таблицу со сшитыми краями (тор), по которой в различных направлениях перемещается интерпретатор, исполняя команды, расположенные в её ячейках.

Первая версия языка Befunge была создана Крисом Пресси в 1993. Как утверждал автор, его целью было разработать язык, максимально сложный для компиляции. Сложность обеспечивается командами p и g, модифицирующими текст программы.

Версия Befunge-93 ограничена таблицей 25×80 (стандартный размер текстового экрана) и потому не обладает тьюринговской полнотой. Befunge на бесконечной таблице полон по Тьюрингу."

Из документации система команд.
Код:
Appendix A. Command Summary
COMMAND         INITIAL STACK (bot->top)RESULT (STACK)
-------         -------------           -----------------
+ (add)         <value1> <value2>       <value1 + value2>
- (subtract)    <value1> <value2>       <value1 - value2>
* (multiply)    <value1> <value2>       <value1 * value2>
/ (divide)      <value1> <value2>       <value1 / value2> (nb. integer)
% (modulo)      <value1> <value2>       <value1 mod value2>
! (not)         <value>                 <0 if value non-zero, 1 otherwise>
` (greater)     <value1> <value2>       <1 if value1 > value2, 0 otherwise>
> (right)                               PC -> right
< (left)                                PC -> left
^ (up)                                  PC -> up
v (down)                                PC -> down
? (random)                              PC -> right? left? up? down? ???
_ (horizontal if) <boolean value>       PC->left if <value>, else PC->right
| (vertical if)   <boolean value>       PC->up if <value>, else PC->down
" (stringmode)                          Toggles 'stringmode'
: (dup)         <value>                 <value> <value>
\ (swap)        <value1> <value2>       <value2> <value1>
$ (pop)         <value>                 pops <value> but does nothing
. (pop)         <value>                 outputs <value> as integer
, (pop)         <value>                 outputs <value> as ASCII
# (bridge)                              'jumps' PC one farther; skips
                                        over next command
g (get)         <x> <y>                 <value at (x,y)>
p (put)         <value> <x> <y>         puts <value> at (x,y)
& (input value)                         <value user entered>
~ (input character)                     <character user entered>
@ (end)                                 ends program


И 2-a варианта программы ." Hello World"

Код:
                 v
>v"Hello world!"0<
,:
^_25*,@


Код:
25*"!dlrow ,olleH">:#,_



P.S. http://www.xakep.ru/post/39418/default.asp
( 12 языков программирования, которые потрясли мир (тем, что на них нельзя программировать) в ней например Delphi уже считается языком ушедшим в прошлое.
http://blogs.cetki.com/maniac/7858/ ( опус про эзотерические языки )


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср янв 16, 2008 14:42 
Не в сети
Moderator
Moderator

Зарегистрирован: Ср май 10, 2006 15:37
Сообщения: 1132
Откуда: Chelyabinsk ( Ural)
Благодарил (а): 0 раз.
Поблагодарили: 9 раз.
Возможно операции < > ^ v лучше заменить на псевдографику ( уголки )
и добавить еще команды из Форта
и получится изотерический Форт, не уступающий SeaForth:)
и поместить в раздел задачек генерацию его кода из Форта!!!

P.S. Придется решать трассировочные задачи:)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 24, 2008 12:06 
Не в сети

Зарегистрирован: Пн окт 15, 2007 17:24
Сообщения: 164
Откуда: Бийск
Благодарил (а): 0 раз.
Поблагодарили: 2 раз.
http://lex-kravetski.livejournal.com/151185.html

_________________
And so forth ...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 52


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB