Forth
http://fforum.winglion.ru/

VALUE приспособлен для других целей
http://fforum.winglion.ru/viewtopic.php?f=2&t=3187
Страница 2 из 3

Автор:  mOleg [ Вс авг 12, 2018 01:05 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Victor__v писал(а):
mOleg писал(а):
Хорошая задача для конкурса задач 8)
Жаль, что до сих пор я не видел реализации 8(


СПФ:
LIB\EXT\LOCALS.F
: ( [COMPILE] { ; IMMEDIATE

8)

это немного другое (если что, реализацию локальных переменных делал и я сам см. .\lib\memory\locals.fts в форке)
речь шла именно о контроле, т.е. убедиться, что на входе параметры и на выходе соответствуют стековой картинке в скобках.

Автор:  mOleg [ Вс авг 12, 2018 01:13 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Hishnik писал(а):
Вот только комментарии никак не воздействуют на результат компиляции, поэтому можно написать одно, а по факту произойдет совершенно другое. Так что тут можно только рекомендовать и предупреждать, да и в целом скобки проигнорировать,а в Си без скобок совершенно не обойтись.

нет спору, но как это относится к выбору использования скобок для комментирования используемых параметров?

Hishnik писал(а):
Это может зависеть от движка. Как я хочу сделать - точно зависит.

ну, тут я не уверен, можно сделать и вполне совместимым, только требуется, чтобы стековая нотация была во всех используемых определениях.
Собственно, создаем теневой словарь, в котором каждому используемому в проверяемом определении имени соответствует тестовый код.
Каждое определение собираем с тестовыми определениями и прогоняем, вход и выход контролируем. Можно делать не через словарь, а просто список, нет необходимости компилировать- можно просто исполнять "псевдокод".
Сложности основные вижу в плане синтаксиса, т.е. если определение будет оканчиваться не ; а чем-то еще и т.п.

Автор:  Hishnik [ Вс авг 12, 2018 01:18 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Victor__v писал(а):
Не уловил сути. Какой ещё фиксированный размер?

Там в какой-то версии было 4096 слов на все. Ну и естественно, с соответствующим "рекламным сопровождением" - что СПФ все равно "стандарт де-факто", что нужно Форт понимать, что можно перекомпилировать и вообще напишите нам либы (т.е. объясните, какую хорошую штуку мы написали).

Автор:  Hishnik [ Вс авг 12, 2018 01:31 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

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

Да вот мне и интересно, почему именно скобки. Я уже встречался со странной реакцией Мура на критику. Такое впечатление, что он делал некоторые вещи чуть ли не назло - дескать, раз спрашиваете, так вот вам еще хуже в ту же сторону. Не удивлюсь, если и со скобками была подобная же история - спросили, почему постфикс, а вместо разъяснения Мур ответил "ах так, а вот вам скобки в качестве комментариев, чтобы не смели инфикс тащить сюда".
mOleg писал(а):
ну, тут я не уверен, можно сделать и вполне совместимым, только требуется, чтобы стековая нотация была во всех используемых определениях.

Ну и зачем необязательное требование? А если я не хочу? А если переменный баланс стека ( : RRR 0 DO I LOOP ; )

Автор:  mOleg [ Вс авг 12, 2018 01:43 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Hishnik писал(а):
mOleg писал(а):
нет спору, но как это относится к выбору использования скобок для комментирования используемых параметров?

Да вот мне и интересно, почему именно скобки. Я уже встречался со странной реакцией Мура на критику. Такое впечатление, что он делал некоторые вещи чуть ли не назло - дескать, раз спрашиваете, так вот вам еще хуже в ту же сторону. Не удивлюсь, если и со скобками была подобная же история - спросили, почему постфикс, а вместо разъяснения Мур ответил "ах так, а вот вам скобки в качестве комментариев, чтобы не смели инфикс тащить сюда".

Мне кажутся претензии предвзятыми.
Количество специальных символов ограничено и сейчас, а раньше их было еще меньше.
Количество парных специальных символов еще меньше.
Использовать для коментария ! восклицательные знаки ! было бы неудобнее и странее, это же касается и большинства других специальных символов, собственно, парными являются "кавычки",[{(квадратные, фигрурные и круглые скобки)}] и все (или я что-то упустил?).
Так, что же сам Hishnik стал бы использовать для комментариев, ограниченных двумя лексемами?

Hishnik писал(а):
mOleg писал(а):
ну, тут я не уверен, можно сделать и вполне совместимым, только требуется, чтобы стековая нотация была во всех используемых определениях.
Ну и зачем необязательное требование? А если я не хочу? А если переменный баланс стека ( : RRR 0 DO I LOOP ; )

Тогда контроль не получится, и все. Либо, придется как-то обозначать это в параметрах, скажем ( #? addr --> #? ), только, вот, получится, что контроль после этого работать адекватно не будет (ну, может я и не очень прав, но на первый взгляд такая сложность будет).

Автор:  Hishnik [ Вс авг 12, 2018 14:33 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

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

// # ; -- REM (REM, конечно, экзотика). Рекомендации по улучшению читаемости - комментарии только однострочные, до конца строки. Если требуются многострочные комментарии, можно средствами редакторов проставлять символы на каждой строке. Аргумент очень простой - можно ошибиться, просматривая исходный текст, и перепутать закомментированное где-то вверху с незакомментированным.
mOleg писал(а):
Тогда контроль не получится, и все.

Не о контроле же речь. Просто скобки применить с пользой.

Автор:  mOleg [ Вс авг 12, 2018 15:01 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

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

// # ; -- REM (REM, конечно, экзотика).

плохие варианты, в том смысле, что это не ответ на заданный вопрос - приведены однострочные комментарии, а я спрашивал про внутристрочный, т.е. аналог сишного /* */ которым по-сути является ( ) в Форте.

Hishnik писал(а):
mOleg писал(а):
Тогда контроль не получится, и все.

Не о контроле же речь. Просто скобки применить с пользой.

значит, мы не поняли друг друга 8(

Автор:  Hishnik [ Вс авг 12, 2018 15:31 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Ну это как с вечным двигателем. Ответ "вечный двигатель невозможен" плохой, потому что вопрос был какие подшипники лучше для вечного двигателя. Про вред многострочных комментариев написано уже достаточно. Аргумент "так было у Мура / в ANS" тут не проходит.

Автор:  vikt [ Вс авг 12, 2018 18:05 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Пардон. А в чем вред то?

Автор:  Hishnik [ Вс авг 12, 2018 18:35 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

При просмотре текста могут быть ошибки в выявлении закомментированного фрагмента. Гораздо проще проверить, что конкретно в этой строке есть комментарий, чем искать где-то наверху, нет ли там открывающего символа. Кроме того, возникают уточняющие вопросы. Допустимы ли в языке вложенные многострочные комментарии? Или первый же закрывающий символ "сбросит" все? Продолжится ли эффект комментариев на следующий файл? Вобщем, неоднозначно это и плохо подходит для языка, для которого важно обеспечить хорошую читаемость.

Автор:  forther [ Вс авг 12, 2018 20:52 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Мур лет двадцать как красит комментарии в белый цвет. Никаких скобок.

Автор:  Hishnik [ Вс авг 12, 2018 22:19 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

forther писал(а):
Мур лет двадцать как красит комментарии в белый цвет. Никаких скобок.

Неужели белилами? :) Или там в тексте все-таки есть способ выделить место, которое будет выглядеть белым?

А вообще мне соображения Мура сейчас интересны примерно так же, как конструкторам спорткаров соображения древних изобретателей колеса.

Автор:  forther [ Пн авг 13, 2018 16:20 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

И поэтому на этом форуме фамилию "Мур" вы упоминаете чаще всех.

Автор:  Hishnik [ Пн авг 13, 2018 16:55 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

forther писал(а):
Мур лет двадцать как красит комментарии в белый цвет. Никаких скобок.

Вот это чье было?

Автор:  forther [ Пн авг 13, 2018 17:10 ]
Заголовок сообщения:  Re: VALUE приспособлен для других целей

Лукавите. Я вам отвечал. Впрочем, если б я активнее писал на этом форуме, то вероятно б ссылался на и упоминал Чака Мура даже чаще чем вы.

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