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/ |