Forth
http://fforum.winglion.ru/

Quark: локальные объявления
http://fforum.winglion.ru/viewtopic.php?f=23&t=2942
Страница 2 из 4

Автор:  gudleifr [ Вс июн 16, 2013 19:58 ]
Заголовок сообщения:  Re: Quark: локальные объявления

mOleg писал(а):
это разные механизмы, каждый удобнее для своих задач
Третий раз спрашиваю, в чем прелесть "контейнеров"?

Автор:  diver [ Вс июн 16, 2013 20:00 ]
Заголовок сообщения:  Re: Quark: локальные объявления

gudleifr писал(а):
2. Разработчик при необходимости может создать все сам.
Следовательно.
3. Заранее закладывать подобные фичи смысла нет.

тут речь о включении в ядро, насколько я понял. следовательно что-то будет реализовано на низком уровне и даст некоторое ускорение при выполнении этих самых изысков.
А так как Quark идет без сопроводительных исходников, включение этого в "базовую" поставку не лишено смысла.

gudleifr писал(а):
P.S. Было бы полезно описать методы решения подобных задач на неком мета-Forth...


сомневаюсь

Автор:  gudleifr [ Вс июн 16, 2013 20:05 ]
Заголовок сообщения:  Re: Quark: локальные объявления

diver писал(а):
будет реализовано на низком уровне и даст некоторое ускорение при выполнении этих самых изысков.
Наоборот. Разработчику скорее всего понадобится "то же, но с перламутровыми пуговицами" и ему придется тратить время на "выливание воды из чайника".
diver писал(а):
так как Quark идет без сопроводительных исходников...
то говорить о нем как о Forth смысла нет.

Автор:  mOleg [ Вс июн 16, 2013 20:41 ]
Заголовок сообщения:  Re: Quark: локальные объявления

gudleifr писал(а):
Третий раз спрашиваю, в чем прелесть "контейнеров"?

В том, что они есть 8)

Автор:  gudleifr [ Вс июн 16, 2013 20:43 ]
Заголовок сообщения:  Re: Quark: локальные объявления

mOleg писал(а):
В том, что они есть
Слив засчитан.

Автор:  in4 [ Вс июн 16, 2013 20:56 ]
Заголовок сообщения:  Re: Quark: локальные объявления

diver писал(а):
а что-ндь типа Муровского мультивхождения в слово не планируется? или может уже есть?
Не в Кварке, но есть. В SPF-библиотеках profit-а есть.

Есть в тех системах, где имя слова возвращает адрес поля кода.
Хорошо работает там, где есть встроенный оптимизатор CALL -> JMP (== оптимизация хвостовой рекурсии).

Но это требует изменения стиля программирования. Подходы традиционного Форта работать будут, но не так эффективно.

Ну и тогда уж надо использовать новые предложения Мура - вынесенные словари, их чистку во время работы и т.п., что еще больше изменяет стиль программирования...
Это уже будет не Кварк... :(

А так подходит для микроконтроллеров. Но комьюнити маленькое... :( Активные пользователи мне не известны.

Автор:  in4 [ Вс июн 16, 2013 21:01 ]
Заголовок сообщения:  Re: Quark: локальные объявления

diver писал(а):
gudleifr писал(а):
2. Разработчик при необходимости может создать все сам.
Следовательно.
3. Заранее закладывать подобные фичи смысла нет.

тут речь о включении в ядро, насколько я понял. следовательно что-то будет реализовано на низком уровне и даст некоторое ускорение при выполнении этих самых изысков.
А так как Quark идет без сопроводительных исходников, включение этого в "базовую" поставку не лишено смысла.
Лишено. К этому нужен целый пакет изменений, не совместимый с существующим ядром и стилями/методами программирования!

Это будет просто ДРУГОЙ язык. Фортоподобный, но другой. Диалект Форта.

Автор:  in4 [ Вс июн 16, 2013 21:05 ]
Заголовок сообщения:  Re: Quark: локальные объявления

gudleifr писал(а):
Третий раз спрашиваю, в чем прелесть "контейнеров"?
В организации программы. Причем только для программиста. Если он или сам, или с поддержкой среды может записывать исходник и размещать код там, где ЕМУ удобнее - такие контейнеры и не нужны будут... ;)

Автор:  in4 [ Вс июн 16, 2013 21:11 ]
Заголовок сообщения:  Re: Quark: локальные объявления

gudleifr писал(а):
А мы-то, дураки, радовались, что в C все функции описываются на верхнем уровне, а не как в Pascal - вложенно...
А чему радоваться-то? Их уже назвали "замыканиями" и тянут обратно в языки...

Да и неудобно код на С писАть в определенных стилях, где переходы нужны, например, оптимизированные конечные автоматы...

Автор:  diver [ Вс июн 16, 2013 21:21 ]
Заголовок сообщения:  Re: Quark: локальные объявления

gudleifr писал(а):
diver писал(а):
так как Quark идет без сопроводительных исходников...
то говорить о нем как о Forth смысла нет.


:)) с какого такого перепуга?????
я начинал с системы TF32 от "Технофорт" - в ней НЕ БЫЛО исходников. Зато был HELP, аналогичный тому, что есть сейчас в SPF. И работать приятнее было именно с TF32, не смотря на то, что в SPF БЫЛИ исходники.

Иногда лучше иметь нормальную документацию и системы помощи, чем некие "волшебные" исходники, которые почему-то могут помочь новичку...(ну просто чудесным образом.....ничего не знаем, конструкции языка слышали краем уха, книжки фтопку...но смотрим исходники, и о чудо - поняли суть....буга-га...)

Автор:  diver [ Вс июн 16, 2013 21:29 ]
Заголовок сообщения:  Re: Quark: локальные объявления

in4 писал(а):
Это будет просто ДРУГОЙ язык. Фортоподобный, но другой. Диалект Форта.


будет. ну и что?
так или иначе для решения СВОЕЙ задачи фортер создает ДИАЛЕКТ форта для данной задачи. с теми средствами, что позволяют её описать.

возможны некоторые ньюансы, связанные в базовой для конкретного фортера форт-системой, будь то Кварк, СПФ, Свифт, или ColorForth. от НЕЁ уже и пляшем. и в зависимости от результата или ведем разработку на любимой и привычной системе, или выбираем новую...

Автор:  gudleifr [ Вс июн 16, 2013 21:35 ]
Заголовок сообщения:  Re: Quark: локальные объявления

in4 писал(а):
В организации программы.
Чем "контейнеры в скобках" организованнее CREATE-DOES?
in4 писал(а):
А чему радоваться-то?
Тем, что код стал читабельным. Возьмите код на языке, где вложение одного в другое сильно развито и попробуйте разобраться. Именно поэтому ООП и не работает.
in4 писал(а):
оптимизированные конечные автоматы...
C-компилятор обычно вполне справляется с простейшими случаями оптимизации. Да и правка ассемблерного кода в C-программе трудностей не вызывает.
diver писал(а):
с какого такого перепуга?????
С такого, что Forth, не позволяющий языковые эксперименты, не способен применяться по назначению - для написания проблемно-ориентированного языка.

Автор:  diver [ Вс июн 16, 2013 21:39 ]
Заголовок сообщения:  Re: Quark: локальные объявления

gudleifr писал(а):
С такого, что Forth, не позволяющий языковые эксперименты, не способен применяться по назначению - для написания проблемно-ориентированного языка.


и с чего это Кварк не позволяет языковых экспериментов???

Автор:  gudleifr [ Вс июн 16, 2013 21:57 ]
Заголовок сообщения:  Re: Quark: локальные объявления

diver писал(а):
и с чего это Кварк не позволяет языковых экспериментов???
С того, что скрывает устройство своих слов, не давая возможности свободно создавать компилирующие слова.

Автор:  diver [ Вс июн 16, 2013 21:59 ]
Заголовок сообщения:  Re: Quark: локальные объявления

gudleifr писал(а):
С того, что скрывает устройство своих слов, не давая возможности свободно создавать компилирующие слова.


Например, мне для этой системы - http://www.mpeforth.com/arena/lpcforth.zip - сокрытие исходников и наличие документашки ничуть не мешает...

Страница 2 из 4 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/