Forth http://fforum.winglion.ru/ |
|
СПФ для чайников http://fforum.winglion.ru/viewtopic.php?f=18&t=597 |
Страница 5 из 5 |
Автор: | gudleifr [ Вс апр 16, 2017 20:40 ] |
Заголовок сообщения: | Re: СПФ для чайников |
<mOleg приперся. Далее - http://gudleifr.forum2x2.ru/t10-topic> |
Автор: | mOleg [ Вс апр 16, 2017 20:44 ] |
Заголовок сообщения: | Re: СПФ для чайников |
Victor__v писал(а): Словари опр. в кодофайле будут ссылаться на переменную DP , а словари в динамических словарях на доп.поле динамического словаря-предпечи. Касательно термина "наследование" Здесь оно в принципе и происходит. Словарь наследует некий указатель. вот, опять отправлю к форку, т.к. там это уже реализовано: каждый словарь имеет собственное пространство, которое еще и может разделяться несколькими потоками одновременно. Victor__v писал(а): Что делать? Забыть NOTFOUND как страшный сон. Дурость да и только. Никогда не понятно, в каком словаре оно окажется, и какое вызовется. Вообще не понятно, почему такой механизм оказался нужен (точнее понятно, захотелось файлы подключать как обычные слова и еще разбирать сложные синтаксические конструкции типа VOC::NAME , только, имхо, так делать было категорически нельзя! |
Автор: | vpn289 [ Вс апр 16, 2017 21:19 ] |
Заголовок сообщения: | Re: СПФ для чайников |
Victor__v писал(а): Код: А можно про NOTFOUND поподробнее? В чем его проблемы поконкретнее? данное слово ищется интерпретатором в словаре. механизм расширяемости отсутствует. Из-за этого надо переопределять данное слово в словаре с доп.действиями. При реализации расширений приходится вертеться т.е. согласовывать входные и выходные данные. Обычной практикой здесь является использование механизма исключений Какой механизм расширения нужен для NOTFOUND? По-моему, в переопределении слов нет ничего страшного. Подумаешь, оставить два значения на стеке нетронутыми. Цитата: Что делать? Пусть каждый словарь имеет xt на ситуацию "не найдено в словаре". Также пусть в интерпретаторе будет механизм который вызывает эти xt по-порядку до конца последовательности или до получения успеха Т.е. каждое xt должно иметь на входе addr u а на выходе ??? -1|0 Просто и более надёжно. Не проще же. То же самое. Вот эти последовательные "не найдено в словаре" и поиск какого-то успеха мне непонятны. Зачем это делать? Как это предполагается использовать? Думаю, надо разделить понятия. Само слово NOTFOUND нужно для вызова слов через :: из произвольного, явно заданного словаря. Механизм NOTFOUND интерпретатора это кое-что иное, и его можно использовать довольно эффективно. Не обязательно по "правилам хорошего тона" У себя я сделал так: Для xt на ситуацию "не найдено в словаре" ввел слово BADWORD. Оно имеет в поле связи ноль, SFIND по этому нулю останавливается - "конец списка" и кладет на стек xt этого BADWORD. В случае связанных списков, на стек кладется xt последнего BADWORD. Автоматически потому-что у него в поле связи ноль. Если искать BADWORD явно, то ляжет xt первого BADWORD в цепочке. Зачем нужно было бы вызывать BADWORDы последовательно, совершенно не представляю. |
Автор: | KPG [ Вс апр 16, 2017 22:27 ] |
Заголовок сообщения: | Re: СПФ для чайников |
gudleifr писал(а): <mOled приперся. Далее - http://gudleifr.forum2x2.ru/t10-topic> Спасибо, mOleg! (а что такое mOled?) P.S.gudleifr Успехов в продвижениии личного форума. Остатки сообщений, возможно, дотерут модераторы. Останутся только "мифические" сообщения в диалогах форумчан. Не обидно? Что они могут остаться? P.P.S. ProfiT и Ygrek ушли с форума и больше не вернулись, хотя очень жаль. были и ещё потери в истории форума (вспомнив о mak4444) и сейчас неизвестно активное ядро пользователей форума. |
Автор: | F-MAP [ Вс апр 16, 2017 22:44 ] |
Заголовок сообщения: | Re: СПФ для чайников |
mOleg писал(а): Victor__v писал(а): Словари опр. в кодофайле будут ссылаться на переменную DP , а словари в динамических словарях на доп.поле динамического словаря-предпечи. Касательно термина "наследование" Здесь оно в принципе и происходит. Словарь наследует некий указатель. вот, опять отправлю к форку, т.к. там это уже реализовано: каждый словарь имеет собственное пространство, которое еще и может разделяться несколькими потоками одновременно. Victor__v писал(а): Что делать? Забыть NOTFOUND как страшный сон. Дурость да и только. Никогда не понятно, в каком словаре оно окажется, и какое вызовется. Вообще не понятно, почему такой механизм оказался нужен (точнее понятно, захотелось файлы подключать как обычные слова и еще разбирать сложные синтаксические конструкции типа VOC::NAME , только, имхо, так делать было категорически нельзя! Ну совсем разве как страшный сон? весьма и полезно бывает.. |
Автор: | Hishnik [ Вс апр 16, 2017 23:02 ] |
Заголовок сообщения: | Re: СПФ для чайников |
KPG писал(а): Спасибо, mOleg! (а что такое mOled?) Ой, а я только заметил. Модифицированный OLED? Или Mini OLED? |
Автор: | gudleifr [ Вс апр 16, 2017 23:08 ] |
Заголовок сообщения: | Re: СПФ для чайников |
Hishnik писал(а): Ой, а я только заметил. Модифицированный OLED? Или Mini OLED? Спасибо за вычитку. Хоть какой-то от Вас прок. Приношу mOleg свои извинения. То, что я с ним на одно поле какать не сяду, не означает, что его надо "модифицировать".
|
Автор: | Victor__v [ Ср апр 19, 2017 23:26 ] |
Заголовок сообщения: | Re: СПФ для чайников |
Цитата: Какой механизм расширения нужен для NOTFOUND? По-моему, в переопределении слов нет ничего страшного. Подумаешь, оставить два значения на стеке нетронутыми. notfound имеет 2 переменные на входе нечто на выходе. Ежели notfound не справился ловим исключение. При переопределении придётся экранировать пред. notfound в catch и следить за стеком данных т.к. вернуть может и не совсем то кол-во значений, которые были на входе ( кажется это, ?sliteral делает ) и ещё Цитата: Никогда не понятно, в каком словаре оно окажется, и какое вызовется. С этим я сталкивался, ощущения не очень. Цитата: Вот эти последовательные "не найдено в словаре" и поиск какого-то успеха мне непонятны. Зачем это делать? Как это предполагается использовать? Контроль, как минимум, и функциональность ( не нужно? отключи. Полезно? оставь.) Где можно использовать. Пару раз сталкивался с задачей частичной форт-интерпретации. К примеру, непонятную строку хешируем, а число записываем в массив. Или вычленять некие сущности из файла. Вот в СПФ для этого надо или писать свой парсер и интерпретатор со своими финтифлюшками или же создать словарь, определить в нём notfound с нужными действиями , слово для подключения файла ( : INCLUDE INCLUDED ; ) и так далее |
Автор: | gudleifr [ Чт апр 20, 2017 10:51 ] |
Заголовок сообщения: | Re: СПФ для чайников |
<http://www.gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=%5C1.INTERPRETATOR%5C1.ZIKL%20UPRAWLENIA%5C2.POISK%20KODA> |
Страница 5 из 5 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |