Forth http://fforum.winglion.ru/ |
|
Вторичная Forth-машина http://fforum.winglion.ru/viewtopic.php?f=2&t=2944 |
Страница 5 из 6 |
Автор: | gudleifr [ Чт июл 04, 2013 17:25 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
<Удалено по причине большого количества флуда в теме> |
Автор: | gudleifr [ Вт янв 16, 2018 02:35 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
<Удалено по причине большого количества флуда в теме> |
Автор: | gudleifr [ Вт янв 16, 2018 02:47 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
<Удалено по причине большого количества флуда в теме> |
Автор: | Ethereal [ Вт янв 16, 2018 15:04 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
gudleifr писал(а): Без STATE... У Мура в cmForth не было STATE. Его бы твои доводы не вштырили.Доводы против: : INTERPRET ( n n) >IN 2! BEGIN 1 -' IF NUMBER ELSE EXECUTE THEN AGAIN ; RECOVER : ] BEGIN 2 -' IF 1 -FIND IF NUMBER \ LITERAL ELSE DUP @ DUP 140040 AND 140040 = OVER 170377 AND 140342 XOR AND SWAP 170040 AND 100040 = OR IF @ 40 XOR ,C ELSE ,A THEN THEN ELSE EXECUTE THEN AGAIN ; RECOVER : [ POP DROP ; : : CREATE -1 ALLOT SMUDGE ] ; и все. Крутится вечный цикл INTERPRET , он может исполнить и слово ] , слово ] это вечный цикл компилятора , а слово [ это выход из компилятора через RDROP EXIT |
Автор: | gudleifr [ Вт янв 16, 2018 15:47 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
<Удалено по причине большого количества флуда в теме> |
Автор: | gudleifr [ Вт янв 16, 2018 17:10 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
<Удалено по причине большого количества флуда в теме> |
Автор: | Victor__v [ Вт янв 16, 2018 17:50 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
Ещё вариант разделения компилятора и инрепретатора VECT DOING VECT NOTFOUND : INTERPRET BEGIN PARSE-NAME DUP WHILE SFIND IF DOING ELSE NOTFOUND THEN REPEAT 2DROP ; : ] ['] compilation TO DOING ['] NOTF,, TO NOTFOUND ; : [ ['] EXECUTE-INTEPR TO DOING ['] NOTF-INTR TO NOTFOUND ; : ; RET, [COMPILE] [ ; Как-то так |
Автор: | _KROL [ Вт янв 16, 2018 17:53 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
gudleifr писал(а): Интереснее посмотреть где эта "кнопка" расположена в "цикле разработки по Броуди" А зачем она?.. С другой стороны, обычным "[" тогда можно сломать всю систему за раз, и никакой ФИГ не разберётся куда она потом вернётся Victor__v писал(а): ... Прикольно) Только обработки чисел пока нету.
|
Автор: | gudleifr [ Вт янв 16, 2018 17:59 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
<Удалено по причине большого количества флуда в теме> |
Автор: | Victor__v [ Вт янв 16, 2018 17:59 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
_KROL писал(а): gudleifr писал(а): Интереснее посмотреть где эта "кнопка" расположена в "цикле разработки по Броуди" А зачем она?.. С другой стороны, обычным "[" тогда можно сломать всю систему за раз, и никакой ФИГ не разберётся куда она потом вернётся Victor__v писал(а): ... Прикольно) Только обработки чисел пока нету.а Цитата: VECT NOTFOUND для чего тогда, а?
|
Автор: | _KROL [ Вт янв 16, 2018 18:07 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
Цитата: VECT NOTFOUND Понятно, ТАМ, если не число(при подключенном NUMBERS), вызывается исключение.
|
Автор: | Hishnik [ Вт янв 16, 2018 23:26 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
Victor__v писал(а): а Цитата: VECT NOTFOUND для чего тогда, а? Как в классическом анекдоте - сахар в баночке из-под чая, на которой приклеена бумажка "соль". И правда, где же еще числа обрабатывать? Конечно, в NOTFOUND! Причем даже бумажки "обработка чисел" нет, надо проникнуться сектантскими сказками и принять такой способ как истину. Ну и свой обработчик NOTFOUND научиться писать так, чтобы не сломать то, что на него уже навесили. |
Автор: | Victor__v [ Ср янв 17, 2018 09:12 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
Hishnik писал(а): Victor__v писал(а): а Цитата: VECT NOTFOUND для чего тогда, а? И правда, где же еще числа обрабатывать? Конечно, в NOTFOUND! А где ещё? Если это слово отвечает за обработку не распознанных строк. Hishnik писал(а): Ну и свой обработчик NOTFOUND научиться писать так, чтобы не сломать то, что на него уже навесили. Это особенности примера. К тому же. Кто-то на любое возмущение тем, что этот NOTFOUND не расширяем, скажет а зачем его расширять? Короче, где-то пригодится, возможно, подобная схема интерпретатора даже используется. |
Автор: | gudleifr [ Ср янв 17, 2018 11:27 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
<Удалено по причине большого количества флуда в теме> |
Автор: | Hishnik [ Ср янв 17, 2018 11:29 ] |
Заголовок сообщения: | Re: Вторичная Forth-машина |
Victor__v писал(а): А где ещё? Если это слово отвечает за обработку не распознанных строк. Очевидный вариант - ввести NUMBER в явном виде. А вот если и NUMBER не смог разобрать это, тогда уже NOTFOUND. Victor__v писал(а): Кто-то на любое возмущение тем, что этот NOTFOUND не расширяем, скажет а зачем его расширять? А ошибки игнорировать и пытаться продолжить или останавливаться с исключением? |
Страница 5 из 6 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |