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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 51 ]  На страницу Пред.  1, 2, 3, 4

Форт развивается. Стоит ли использовать новые диалекты?
Плевать на диалекты, мне С-стиля программирования хватает! 0%  0%  [ 0 ]
Я сделал расширение Форта до ... и мне этого хватает! 13%  13%  [ 2 ]
Конечно! Люблю использовать последние достижения! 38%  38%  [ 6 ]
А что, это действительно эффективно? 25%  25%  [ 4 ]
Я вообще Форт не использую! 0%  0%  [ 0 ]
Другое. Опишите свой вариант в форуме. 25%  25%  [ 4 ]
Всего голосов : 16
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вс апр 15, 2007 02:09 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
profiT писал(а):
mOleg писал(а):
И дело не в том, что оно STATE SMART !

Оно сделано "шибко вумным" потому что вообще есть "шибко вумные" слова, анализирующие STATE. Если есть хотя бы одно state-smart слова -- будут хаки, будут "обходы", будут глюки, будут нестыковки в логике.

оно сделано слишком умным - оно получается умнее меня - а это не порядок.
Других таких слов в стандартном форте к счастью нет

profiT писал(а):
mOleg писал(а):
[COMPILE] TO - должно работать, нет, даже обязано!

Э-э, нет.. Тут вам не здесь.. Мне нужно скомпилировать слово TO, а не компилировать слово компилирующее слово (TO) (например, зависит от реализации).

поясни! какая разница?

profiT писал(а):
И за [COMPILE] спасибо -- это как раз ярчайший пример идиотизма вызванного вызванного открытым ящиком Пандоры -- state-smart словами.

а мне нравится именно пара [compile] compile а не гадкий POSTPONE

Хищник писал(а):
Думается, state-smart все же терпимы.... Но все равно интересно, как без них. Видимо, я сильно упустил начало обсуждения.

вообще тут по-моему просто раздутая проблема. STATE переменная очень проста и понятна, а главное надежна - т.к. она одна - пусть даже имеющая много состояний. А вот когда контексты начинают выполнять ее роль, то может получиться очень даже неудобная штука.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс апр 15, 2007 16:51 
Цитата:
вызванного открытым ящиком Пандоры -- state-smart словами

По моему, дело более даже в признаке IMMEDIATE (который жестко привязан к слову), а не в анализе STATE. Например, photonInterpreter анализирует признак, заданный отступами, а startColorSPF добавляет анализ признака, представленного суфиксом слов. STATE — это аналогичный признак, он лишь по другому задается и абстрагирован от синтаксиса.

А упомянутое POSTPONE анализирует у аргумента как раз признак IMMEDIATE, а не STATE.

В свою очередь, признак IMMEDIATE — это лишь одно из возможных решений задачи маскировки для "мультиплексирования" входного потока, совмещения в нем "обычного" и "управляющего" потоков. Цвета — другое решение той же задачи. XML — еще одно решение, очень емкое в силу естественных иерархичности и возможностей маскировки. Оно позволяет легко мультиплексировать произвольно много под-потоков, лишь бы структура оставалалсь "деревом".


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс апр 15, 2007 22:31 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
rvm писал(а):
По моему, дело более даже в признаке IMMEDIATE

rvm писал(а):
А упомянутое POSTPONE анализирует у аргумента как раз признак IMMEDIATE, а не STATE.

кстати да!
Действительно проблема у POSTPONE не столько в анализе STATE сколько в анализе типа слова. Этой проблемы нет у слов однозначно выполняющих свои действия над другими словами, как TO IS COMPILE ['] [COMPILE] и что там еще 8)


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

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
Хищник писал(а):
Думается, state-smart все же терпимы.... Но все равно интересно, как без них.

STATE задает как бы контекст, в котором слова имеют другой смысл, разный для разного значения STATE - либо интерпретировать, либо компилировать, и оно общее для всех слов.
В CF цвет задает способ использования конкретного слова - то ли его использовать как имя нового определения (реально - как начальный адрес), то ли компилировать, то ли исполнить. Еще можно компилировать макрос. Ну, есть и несколько вариантов комментариев.
Мур(еще с cmForth), убрал STATE (вернее, IMMEDIATE), используя разные словари для компиляции и интерпретации.
Я убрал STATE , сделав отдельно цикл интерпретации и цикл исполнения. А слова [ ] ], переключают эти циклы. Систему планировалось использовать в виде простых текстов, поэтому о разных цветах и шрифтах речь даже не шла. Префиксы перед каждым словом мне тоже не понравились. Поэтому я продлил действие состояний. Т.о. у меня все же используется аналог STATE , но не флагом, а сразу значением - соответствующим состоянию циклом обработки - циклом интерпретации или циклом компиляции.
Потом уже я увидел пример profit-а с суффиксами, он мне понравился. ;)
profiT писал(а):
И вообще, у меня уверенность что кто-то из "классиков" однозначно выразил своё "фи" state-smart словам.

Да:
Броуди, глава 8. писал(а):
СОВЕТ
Слова не должны зависеть от переменной STATE, если
программист собирается когда-либо использовать их для
вызова из высокоуровневого определения и при этом ожидает
получить от них такое же поведение, как и при
интерпретации.

А неприятность STATE-зависимых слов в том, что получается неожиданное поведение. Ты хочешь прикомпилировать слово, а оно почему-то выполняется... ;)
И сложность - больше анализа, больше сложность, меньше эффективность, больше код...

_________________
With best wishes, in4.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн июн 25, 2007 14:48 
Цитата:
Форт развивается. Стоит ли использовать новые диалекты?

Если это кому-либо необходимо, то почему бы и нет? Главное, чтобы польза была.
А вот лично мне нужен голый ANS-Forth. И доп.словари, делающие из такого минимального Форта нужный мне DSL. Всё. Мне этого хватит "за глаза".
Что касается диалектов, то Форт сам по себе настолько гибок, что вместо того, чтобы разрабатывать очередной диалект, можно просто реализовать нужную функциональность в виде словаря. :work;
Имхо :shuffle;


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн июн 25, 2007 18:25 
Не в сети

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
Владимир писал(а):
Что касается диалектов, то Форт сам по себе настолько гибок, что вместо того, чтобы разрабатывать очередной диалект, можно просто реализовать нужную функциональность в виде словаря.

Да, функционально можно сделать то же самое. У меня даже пара версий есть... ;) А при реализации, которую нужно "поджать" для микроконтроллера или ПЛИС - прийдется таки переработать всю Форт-систему... :)

_________________
With best wishes, in4.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 51 ]  На страницу Пред.  1, 2, 3, 4

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


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

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


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

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