Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Ср дек 12, 2018 01:26

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 638 ]  На страницу Пред.  1 ... 38, 39, 40, 41, 42, 43  След.

Форт мертв?
Давно уже 12%  12%  [ 4 ]
Еще пока нет, но уже скоро 6%  6%  [ 2 ]
Форт для меня живее всех живых 82%  82%  [ 28 ]
Всего голосов : 34
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вс дек 23, 2007 22:19 
Не в сети

Зарегистрирован: Чт окт 25, 2007 08:01
Сообщения: 154
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
dvuugl писал(а):
Вот оно! "Истина в том чтобы добывать мясо" (c) Smile
Почти весь словарь форта не несёт в себе полезной для каждой конкретной задачи нагрузки. Особенно имена слов , которые он таскает с собой только для якобы "интерактивности", которой в SPF всё равно никто не пользуется, а компилят всё тем же сишным способом из текстового исходника. Да ещё с использованием а-ля си библиотек.


О - ащё одному человеку толку мало от интерактивности. :)

Вообще - тема интересная. Может устроим опрос? Типа где вы эту интерактивность РЕАЛЬНО видали. :)

Говорю про себя - пользуюсь в Excel для отладки макросов, потому как мелкие разовый задачи люблю решать в нём.

Ключевое тут 1) мелкие (отладка крупной задачи требует часто несколько иного подхода - хотите вы или нет); 2) Excel - удобная среда для решения задач определённого вида; 3) Разовые - для задачи, которая предполагается многократной, предпочитаю находить более "индустриальное" решение - свою библиотеку, транслятор с целевого языка в сишный код и т.п.


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

Зарегистрирован: Вс дек 02, 2007 17:31
Сообщения: 442
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
K`[f писал(а):
Во-первых, а причём тут проверка типов? Мне вот интересно...
А с чего разговор начался? Уже забыли? Я там сказал что добавив жесткую типизацию в Форт это уже будет не форт, вы не согласились и пошло...
K`[f писал(а):
Один из способов реализации Форта - в виде примитивного байт-кода или последовательностей CALL. А в ассемблере куча мнемоник используется, которые как-то по своему трактуются. Часто ещё и в зависимости от контекста.
Дык есть байт код, еще проще. :lol: А с другой стороны, как тогда быть с инлайнами не говоря уже про оптимизацию??? Это тоже проще асма? :shock:
K`[f писал(а):
Я и сам такой подход использую. И как я уже говорил - преимуществ Форту это не даёт.
Ничё не понимаю. То это преимущество Форта, то Форту преимуществ не дает... :shock: :?
K`[f писал(а):
Т.е. у для вас критерий "Скорость при интерактивности" - это самое главное в Форте?
Нет, это просто одна из его ключевых характеристик. Это самая быстрая виртуальная машина, интерпретатор и т.д. Кстати, относительно самого важного - именно эта особенность дала жизнь другим, похожим системам, таким как PostScript, Java, NET, да и форт кое куда по этой же причине встраивают. :roll:
Я скажу по другому - если он станет по скорости сравнимым с Питоном или Ruby, причем не потому что у создателя руки-крюки, то Фортом его называть я не буду. Радикальные изменения синтаксиса только подтвердят мою правоту.
K`[f писал(а):
Назовите мне хоть один язык, который этим ТРЁМ критериям соответствует, окромя Форта, ессно
Макроассемблер... И дальше разговор переходит в русло трактования высказаных вами критериев (как я уже сказал, они слишком абстрактны).

_________________
Am I evil? I'm man - yes I am! © James Hatefield


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс дек 23, 2007 23:12 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6452
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
Forthware писал(а):
Кончаются только патенты. Авторские права вечны, даже по наследству передаются. Права на торговую марку можно продолжать сколько влезет.

И это все 3 разных понятия. Авторские права по определению неотчуждаемы, но с имущественными они никак не связаны. А что касается языков - а почему никто не зарегистрировал торговую марку "Си"? Аналогично с Бейсиком, Паскалем, Хаскеллем....
Forthware писал(а):
Верно. Forth Inc. и является обладателем прав на торговую марку Forth.

А также на A-Forth, ABC-Forth, Форт, "диалект Форта"?
Forthware писал(а):
Спасибо, понял. ЗЫ Как там дела с документацией обстоят? Хоть бы короткое разьяснение по всем нестандартным словам...

Пишу!... :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс дек 23, 2007 23:13 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6452
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
K`[f писал(а):
Вообще - тема интересная. Может устроим опрос? Типа где вы эту интерактивность РЕАЛЬНО видали.

Да легко. Я постоянно пользуюсь, в 99% случаев никакой GUI с интерактивностью не нужен.


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

Зарегистрирован: Чт окт 25, 2007 08:01
Сообщения: 154
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Forthware писал(а):
А с чего разговор начался? Уже забыли? Я там сказал что добавив жесткую типизацию в Форт это уже будет не форт, вы не согласились и пошло...


Как бы это помягче сказать... Я предлагал вариант типизации. да, но оно того - "немного" не жёсткий. :)

Forthware писал(а):
Дык есть байт код, еще проще. Laughing А с другой стороны, как тогда быть с инлайнами не говоря уже про оптимизацию??? Это тоже проще асма? Shocked


Вообще-то речь шла про самый простой вариант трансляции. Наворачивать можно до бесконечности.

Forthware писал(а):
Макроассемблер... И дальше разговор переходит в русло трактования высказаных вами критериев (как я уже сказал, они слишком абстрактны).


Причём тут трактование? Макроассемблер не подходит ни под один из трёх параметров вообще. Программа на макроассемблере как поток слов не рассматривается, компилируется далеко не в один шаг и IMMEDIATE-слов не содержит. Опять же, даже если считать макросы расширением (а это большой вопрос, как-бы), то уж "лёгким" такой вариант никак не назовёшь.


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

Зарегистрирован: Вс дек 02, 2007 17:31
Сообщения: 442
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Хищник писал(а):
И это все 3 разных понятия.
Совершенно верно.
Хищник писал(а):
Авторские права по определению неотчуждаемы,
Кто сказал? Их можно передавать как угодно.
Хищник писал(а):
но с имущественными они никак не связаны.
Связаны поскольку являются собственностью (интеллектуальной).
Хищник писал(а):
А что касается языков - а почему никто не зарегистрировал торговую марку "Си"?
А это не так то просто. Особенно для буквы алфавита. :) Там есть целый ряд условий, ну и в результате комиссия решает не конфликтует ли ваша заявка с уже существующими марками, не является ли слишком массово используемой и т.д. Думаю, третью букву алфавита как торговую марку зарегистрировать не получится в той же мере как интелу не получилось зарегистрировать число 586, из за чего и выдумали Pentium - вот такое, запроста. :D
Хищник писал(а):
Аналогично с Бейсиком, Паскалем, Хаскеллем....
Про эти не знаю, но не исключено что в некоторые промежутки времени, некоторые из них были торговыми марками. Точно сказать не могу. Есть еще один момент, если торговая марка зарегистрирована кем либо позже чем вы использовали ее в своих целях, то вы можете продолжать использовать свою.
Короче, к чему это мы? Будем регистрировать Форт? :? :lol:
Хищник писал(а):
А также на A-Forth, ABC-Forth, Форт, "диалект Форта"?
Нет конечно! Но, во первых, речь идет не о ХХХ-Форт, а о Форт, во вторых - даже при таких условиях могут судится и выиграть. ;)
Хищник писал(а):
Пишу!...
Жду!... :D Я сам пробовал кое что понять... Но там такие слова есть... :shock: :shuffle;
Кстати, недостаток Форта - если есть слово с неизвестной стековой нотацией то разобраться с ним на грани фантастики (без исходников конечно). В функциональных языках такого быть не может поскольку как минимум известны аргументы, их тип, да и название может что-то намекнуть.

_________________
Am I evil? I'm man - yes I am! © James Hatefield


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

Зарегистрирован: Вс дек 02, 2007 17:31
Сообщения: 442
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
K`[f писал(а):
Как бы это помягче сказать... Я предлагал вариант типизации. да, но оно того - "немного" не жёсткий.
А, ну тагды пардон. Не понял я вас. :oops: Надо было конкретнее... А то с AS дела не будет а другой вариант вы еще не придумали. :shuffle;
K`[f писал(а):
Вообще-то речь шла про самый простой вариант трансляции. Наворачивать можно до бесконечности.
Где речь шла? Понимаете, Форту, как языку, вцелом фиолетово как его транслировать будут. Первый форт вообще не имел шитого кода и интерпретировался прямо в тексте. Последние Форты компилируются в машинные коды с оптимизацией, тем не менее, и тот и эти, за исключением некоторых мест в синтаксисе, разрядности и прочей шелухи, принципиально одинаковы. Потому что суть в возможности интерактивного исполнения и токенизации кода, что может быть достигнуто всеми существующими видами трансляции. Даже компилятор С++ может токенизировать код (но не интерактивно исполнять ;) ), и используется в дебаг билдах. Токенизация, естественно виртуальная, сам код не отличается от обычного, в Форте же токенизация жесткая, но код, теоретически может быть аналогичным получаемому С++, ничто этому не мешает.
К чему это я? К тому чо Форт можно транслировать как угодно, и программист может даже не знать как это происходит на самом деле. Всетаки это язык высокого уровня. :)
K`[f писал(а):
Макроассемблер не подходит ни под один из трёх параметров вообще. Программа на макроассемблере как поток слов не рассматривается,
Каждая строка исходника - слово. Каждый макрос - определяющее слово влияющее на поток слов.
K`[f писал(а):
далеко не в один шаг
Вы однопроходных ассемблеров не встречали? :shock:
K`[f писал(а):
и IMMEDIATE-слов не содержит.
Да ну! А макросы тоже в рантайме идут? :))
K`[f писал(а):
Опять же, даже если считать макросы расширением (а это большой вопрос, как-бы)
Без вопросов! Это расширение. Если я могу добавить любое слово, в пределах допустимого синтаксиса (в Форте тоже есть эти пределы - нельзя определять слова содержащие пробел, например), и оно будет делать что угодно, то это раширение.
K`[f писал(а):
то уж "лёгким" такой вариант никак не назовёшь.
А вот это уже совсем не критерий, слишком субьективно. Я уверен есть люди для которых пользоваться макросами удобнее чем Фортом. Причем, не исключено, что их больше чем фортеров... :(
Поэтому доказать что этот критерий не применим к макроассемблеру в общем случае вы не сможете.

_________________
Am I evil? I'm man - yes I am! © James Hatefield


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

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
Forthware писал(а):
Понимаете, Форту, как языку, вцелом фиолетово как его транслировать будут.


Если разговор столь принципиальный, то пора перестать называть Форт - языком.
Назвать Форт языком и сравнивать его с другими языками программирования. Это
все равно, что корову назвать пожирателем травы и сравнить ее с газонокосилкой.
Если у фора будет жестко определенные синтаксис и семантика, тогда я перестану называть его Фортом.
Т.к. интереса он для меня представлять не будет, даже если он формально подпадет под какоето его определение.


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

Зарегистрирован: Вс дек 02, 2007 17:31
Сообщения: 442
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Mihail писал(а):
Если разговор столь принципиальный, то пора перестать называть Форт - языком.
Да? Тогда пожалуйста назвите каких свойств характерных языку программирования у Форта нет?
Mihail писал(а):
Назвать Форт языком и сравнивать его с другими языками программирования.
А с чем же его тогда сравнивать? С газонокосилками?
Mihail писал(а):
Это все равно, что корову назвать пожирателем травы и сравнить ее с газонокосилкой.
Нет, не всеравно. Обратите внимание на то что входит и то что выходит:
корова: трава -> молоко, мясо.
газонокосилка: трава -> трава.
А теперь по языкам:
Форт: текст -> исполняемый код.
Любой другой язык программирования: текст -> исполняемый код.
Вы можете говорить что Форт это "не только язык", но он однозначно "в том числе язык". Поэтому его можно рассматривать как язык программирования и сравнивать с другими языками программирования. При желании рассмотреть свойства Форта не являющиеся характерными для ЯП, конечно будет другой разговор.
Mihail писал(а):
Если у фора будет жестко определенные синтаксис и семантика, тогда я перестану называть его Фортом.
А если у С не будет жесткого синтаксиса и семантики, вы его начнете называть Форт?
Mihail писал(а):
Т.к. интереса он для меня представлять не будет, даже если он формально подпадет под какоето его определение.
Так что же, значит это ваш интерес является единственным обьективным критерием того что ЯП является Фортом? При всем уважении, если бы такое сказал Чак Мур, я бы еще понял, а так... Может какая то аргументация есть? :?

ЗЫ Названия открытым звездам дает тот кто их открыл, так же и новым землям, и даже елементарным частицам. Тем более, изобретениям название дает их автор. Разводить полемику в русле кто лучше за всех знает что такое Форт не имеет никакого смысла, поскольку человек который придумал это название, считал что его изобретение является именно языком программирования. Сделаете изобретение, назовёте его как угодно, но Фортом назван именно язык программирования свойства которого все мы хорошо знаем. А так, почему бы мухи не называть слонами, если вам так больше нравится?

_________________
Am I evil? I'm man - yes I am! © James Hatefield


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

Зарегистрирован: Вс дек 02, 2007 17:31
Сообщения: 442
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Mihail писал(а):
Цитата:
Понимаете, Форту, как языку, вцелом фиолетово как его транслировать будут.
Если разговор столь принципиальный, то пора перестать называть Форт - языком.
Кстати, а в чем прикол с цитированием именно этого утверждения? Вы что с ним не согласны? Считаете что Форт 1970 года в котором еще не было шитого кода Фортом не был? Или что SPF Фортом не является? Тогда уточните, как именно должен транслироваться настоящий Форт.

_________________
Am I evil? I'm man - yes I am! © James Hatefield


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

Зарегистрирован: Чт окт 25, 2007 08:01
Сообщения: 154
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Forthware писал(а):
Где речь шла? Понимаете, Форту, как языку, вцелом фиолетово как его транслировать будут.


Фиолетово-то фиолетово, но речь шла как раз о случае самой примитивной трансляции. "С" так просто не оттранслируешь.

Forthware писал(а):
Каждая строка исходника - слово. Каждый макрос - определяющее слово влияющее на поток слов.


Ни один макрос не в состоянии изменить поток компиляции и, скажем, позволить вам "в процессе" сыграть в крестики-нолики и, в зависимости от результатов, сгенерить код. :) Опять же - тока внешней тулзой.

Forthware писал(а):
Вы однопроходных ассемблеров не встречали? Shocked


:) "однопроходной" он только по названию. Не придумали ещё способа заранее узнать где находится метка, которая ещё не определена. Так что так или иначе, а забегание назад там используется.

Forthware писал(а):
Да ну! А макросы тоже в рантайме идут? Looool


Они ВООБЩЕ не идут. Макросы - это макросы.

Forthware писал(а):
Без вопросов! Это расширение. Если я могу добавить любое слово, в пределах допустимого синтаксиса (в Форте тоже есть эти пределы - нельзя определять слова содержащие пробел, например), и оно будет делать что угодно, то это раширение.


Да всё можно - обсуждалось же тут где-то недавно. Другое дело - нафиг никому не нужно.
Примерно то же самое Форт-интерактивность vs внешние тулзы в сях. Форт - гибче. Но на практических задачах выигрыш незначительный.

Forthware писал(а):
Поэтому доказать что этот критерий не применим к макроассемблеру в общем случае вы не сможете.


Имхо - достаточно сравнить сложность реализации.


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

Зарегистрирован: Вс дек 02, 2007 17:31
Сообщения: 442
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
K`[f писал(а):
Фиолетово-то фиолетово, но речь шла как раз о случае самой примитивной трансляции. "С" так просто не оттранслируешь.
Зато оттранслируешь бейсик, фортран, а ассемблер, даже проще.
K`[f писал(а):
Ни один макрос не в состоянии изменить поток компиляции и, скажем, позволить вам "в процессе" сыграть в крестики-нолики и, в зависимости от результатов, сгенерить код. Опять же - тока внешней тулзой.
Выполнение кода в процессе его компиляции обеспечивается интерактивностью, чего вы в своих критериях не предусмотрели. А изменять поток кода как угодно в зависимости от заданной в коде информации (не интерактивно) можно макросами.
K`[f писал(а):
"однопроходной" он только по названию. Не придумали ещё способа заранее узнать где находится метка, которая ещё не определена. Так что так или иначе, а забегание назад там используется.
Ну тогда и Форт однопроходный только по названию - ведь ELSE не знает где будет лежать THEN. :)) Вы говорите откровенную глупость, все делается в один проход и с одной таблицей ссылок. Или вы поиск в таблице тоже проходом считаете? Тогда уже меньше трех небывает. :))
ЗЫ Однопроходный, по определению, ассемблер - любой ФортАссемблер. :P
K`[f писал(а):
Они ВООБЩЕ не идут. Макросы - это макросы.
Опять бредим... :lol: Они могут по ходу чего нибудь подсчитывать? Могут. Могут в зависимости от этого вставлять разный код? Могут. Но они не идут... :shock: А что тогда идет? В процессе компиляции только они.
K`[f писал(а):
Да всё можно - обсуждалось же тут где-то недавно. Другое дело - нафиг никому не нужно. Примерно то же самое Форт-интерактивность vs внешние тулзы в сях. Форт - гибче. Но на практических задачах выигрыш незначительный.
Я не об этом. Я всего лишь показываю вам что ваших трех критериев далеко недостаточно, и они совершенно абстрактны, чтобы характеризовать Форт.
K`[f писал(а):
Имхо - достаточно сравнить сложность реализации.
Реализации чего? Реализация ассемблера гдето на порядок проще Форта. Макроассемблера - раз в 5, приблизительно. Посмотрите исходники.

_________________
Am I evil? I'm man - yes I am! © James Hatefield


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн дек 24, 2007 23:37 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6452
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
Forthware писал(а):
Хищник писал(а):
Авторские права по определению неотчуждаемы,
Кто сказал? Их можно передавать как угодно.

Ничего подобного. Авторские права возникают автоматически в процессе создания интеллектуальной собственности. Невозможно передать кому-то авторство "Войны и мира" - оно неотъемлемо принадлежит Льву Толстому. Вот право распоряжаться можно передать издательству.
Forthware писал(а):
Короче, к чему это мы? Будем регистрировать Форт?

На кварк я планирую получить свидетельство о регистрации (тем не менее оставляя его freeware).


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн дек 24, 2007 23:38 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6452
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
K`[f писал(а):
"однопроходной" он только по названию. Не придумали ещё способа заранее узнать где находится метка, которая ещё не определена. Так что так или иначе, а забегание назад там используется.

Таблица ссылок. Даже Форт позволяет иметь неразрешенные ссылки вперед - IF THEN хотя бы.


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

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Цитата:
Ну тогда и Форт однопроходный только по названию - ведь ELSE не знает где будет лежать THEN.

Позволяет, для транслятора достаточно знать взаимное расположение меток (что оно не будет нарушено), кто-то тут говорил, что грамматика Форта - регулярная...
Мне любопытно, как на это влияет возможность встраивания слов с немедленным исполнением, влияющих на трансляцию - какая при этом грамматика? Что-то сразу не соображу ...

_________________
понимаю некоторую бестолковость некоторых вопросов


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 638 ]  На страницу Пред.  1 ... 38, 39, 40, 41, 42, 43  След.

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


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

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


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

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