Forth
http://fforum.winglion.ru/

Forth vs Python
http://fforum.winglion.ru/viewtopic.php?f=4&t=2013
Страница 5 из 7

Автор:  mOleg [ Пт мар 27, 2009 15:24 ]
Заголовок сообщения: 

be_nt_all писал(а):
С учётом того что одна из ниш форта - переносимый ассемблер для всяких однокристаллок это не совсем разная идеология.

ну, если что-то на чем-то делается, это не значит, что идеалогия совпадает.

Автор:  be_nt_all [ Пт мар 27, 2009 16:33 ]
Заголовок сообщения: 

Разумеется. У Форта идеология своя.

С лёгкой руки создателя языка Joy (этакий теоретически выправленный PostScript) и форт, и фактор и все такие языки относятся к конкатенативным. И идеология конкатенативности хорошо описана в ThinkingForth, и, кстати, на фактор-вики concatenative.org. В Форте и факторе, в отличие от потскрипта, джоя и кота (cat) к конкатенативности добавляется естественное метапрограммирование... Да, форт - это не ассемблер.

И всё же... Форт хорош на коротких дистанциях. Те же однокристалки, лёгкий веб-сервер/прокся... Фактор же претендуют на ту же нишу, что и Питон: веб, быстрая разработка прикладухи и т. п. Там живут динамические языки и Фактор -- один из них.

А ещё его можно рассматривать как хорошую, эффективную виртуальную машину для некого скриптового, встроенного в приложение, языка, отдаваемого пользователю. Недаром одна из библиотек - основанный на БНФ парсер. Синтаксис JavaScript там уже есть.

Форт тоже так может, но не всем пользователям можно давать в руки такой инструмент. Есть конечно nncron, но это всё же специфическое приложение, не для всех...

Что же касается статической типизации, её востребованность в фортообразных языках менее очевидна. Cat исповедует автоматическое выведение типов в стиле Ocaml и Haskell, но оно и в "классической" обёртке ещё далековато от народа, что там уж говорить про Форт... Что же до StrongForth, то на его основе легче, чем на основе классического "анархичного" форта сделать высококачественный эффективный оптимизатор. Плюс полиморфизм. Минус -- несовместимость с большей частью классического форт наследия, при равномощности языков.

зы. В твоём форке СПФ, пока там ещё нет каталога ~devel, со всем его блеском и нищетой, стоит подумать о способе документирования библиотек, с автоматической сборкой этой документации в некую help систему... В плане окружения у Пестова есть чему поучится и разработчиком классической Форт-системы...

Автор:  mOleg [ Пт мар 27, 2009 16:39 ]
Заголовок сообщения: 

be_nt_all писал(а):
зы. В твоём форке СПФ,

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

Автор:  Mihail [ Пт мар 27, 2009 18:45 ]
Заголовок сообщения: 

be_nt_all писал(а):
Так вот Фактор -- это как раз динамическая типизация.


Не знаю стоит ли мне заняться Фактором. Какое преимущество имеет Фактор над Фортом (на пример СПФ) с
учетом того, что типы в Форте легко определяются. Как вариант http://mak.chat.ru/f-pl1.rar

mOleg писал(а):
Типизация в Форте возможна, но нафиг не нужна никому.


Если что-то нужно в принципе. То и в Форте тоже нужно.

Автор:  mOleg [ Пт мар 27, 2009 18:48 ]
Заголовок сообщения: 

Mihail писал(а):
mOleg писал(а):Типизация в Форте возможна, но нафиг не нужна никому.
Если что-то нужно в принципе. То и в Форте тоже нужно.

угу, интересно, почему же это народ не бросился на StrongForth ? или не перенял "динамическую типизацию" у постскрипта?

Автор:  Mihail [ Пт мар 27, 2009 19:16 ]
Заголовок сообщения: 

mOleg писал(а):
почему же это народ не бросился на StrongForth ?


Лично я им не интересовался потому, что подозреваю что он не совместим с обычным Фортом
да и не Форт это вообще.


mOleg писал(а):
или не перенял "динамическую типизацию" у постскрипта?


Фортом вообще, мало кто занимается.

Автор:  вопрос [ Пт мар 27, 2009 19:31 ]
Заголовок сообщения: 

Mihail писал(а):
be_nt_all писал(а):
Так вот Фактор -- это как раз динамическая типизация.

Не знаю стоит ли мне заняться Фактором. Какое преимущество имеет Фактор над Фортом (на пример СПФ) с
учетом того, что типы в Форте легко определяются. Как вариант http://mak.chat.ru/f-pl1.rar
mOleg писал(а):
Типизация в Форте возможна, но нафиг не нужна никому.

Если что-то нужно в принципе. То и в Форте тоже нужно .

Типизация (особенно не простая) полезна при отладке более сложных проектов, были бы проекты, была бы типизация - сразу бы появилась. ИМХО

Автор:  chess [ Пт мар 27, 2009 20:54 ]
Заголовок сообщения: 

mOleg писал(а):
сколько же можно писать эту глупость! Форт ничего не унаследовал от ассемблера = это совсем разные идеалогии.

Как любой язык на базе виртуальной машины, Форт имеет мнемоники ее инструкций.
Мнемоники пишутся последовательно, также как мнемоники ассемблера, объединяются мнемоники ФВМ в слова(их аналог для ассемблера подпрограммы).
В самом низу общего много.

Автор:  VshMt [ Пт мар 27, 2009 21:28 ]
Заголовок сообщения: 

Имхо Фактор менее гибок что ли... Но у него хорошая библиотека. И таки этому надо учиться. И броузер системы хоть и кривоватенький. Вопщем маладэц. По мне так колор-форт (пасиб и респект in4-у) + мощная библиотека... Вот что лично мне нужно...

Автор:  chess [ Пт мар 27, 2009 21:28 ]
Заголовок сообщения: 

be_nt_all писал(а):
Слава Пестов при создании Фактора ориентировался на опыт Коммон Лиспа (а у них там немало наработок по эффективной компиляции), и над эффективностью хорошо поработал.

И в чем это выразилось, тесты какие-нибудь-там сравнительные?
По степени доступа к железу у Форта мало соперников и если-бы было сильно надо, то эффективность кода была-бы предельной.
be_nt_all писал(а):
В основном именно из за этого (+, D+, F+) у меня серьёзные отношения с Фортом так и не сложились.

А это как раз минимальная по затратам типизация данных.
Про степень свободы программиста - в Форте она по-моему максимальная и точно соответствует уровню осознасти возможностей Форт-системы этим самым программистом.

Автор:  Hishnik [ Пт мар 27, 2009 21:56 ]
Заголовок сообщения: 

be_nt_all писал(а):
Слава Пестов при создании Фактора ориентировался на опыт Коммон Лиспа (а у них там немало наработок по эффективной компиляции), и над эффективностью хорошо поработал. И набор библиотек там побогаче чем у всех виденных мной Фортов (то же сказывается наследие коммон лиспа), есть, к примеру, веб фреймворк.

Напоминает принцип выбора автомобиля по цвету занавесочек в салоне. Красиво, эстетично, модно, и даже от солнца защищает... и получился Запорожец лучше внедорожника.
be_nt_all писал(а):
возможно, но на мой вкус язык с версией операции сложения для каждого из поддерживаемых типов данных -- антиэстетичен.

"Зато дешев, удобен и практичен" (с) "Бриллиантовая рука". Так процессор работает - у него разные команды сложения для разных типов данных.

Автор:  mOleg [ Вс мар 29, 2009 02:50 ]
Заголовок сообщения: 

Mihail писал(а):
Лично я им не интересовался потому, что подозреваю что он не совместим с обычным Фортом
да и не Форт это вообще.

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

вопрос писал(а):
Типизация (особенно не простая) полезна при отладке более сложных проектов, были бы проекты, была бы типизация - сразу бы появилась. ИМХО

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

chess писал(а):
mOleg писал(а):сколько же можно писать эту глупость! Форт ничего не унаследовал от ассемблера = это совсем разные идеалогии.
Как любой язык на базе виртуальной машины, Форт имеет мнемоники ее инструкций.
Мнемоники пишутся последовательно, также как мнемоники ассемблера, объединяются мнемоники ФВМ в слова(их аналог для ассемблера подпрограммы).
В самом низу общего много.

ну, тогда давайте говорить, что ассемблер - это не язык, а целая группа языков, отвечающих следующим правилам:
1) полная близость к системе команд реального процессора - то есть точное соответствие 1 мнемоника = 1 команда (макроассемблеры уже уходят несколько от такой организации, но по сути это отличие - наличие препроцессора)
2) полная несовместимость как на уровне мнемоник, так и на уровне выходного кода для разных архитектур.
3) ассемблеры не интерактивны, являются компиляторами со всеми отсюда вытекающими.
Каким образом это относится к Форту? у которого:
1) имеется виртуальная машина, для упрощения адаптации и переноса кода к различным аппаратным платформам
2) достаточно сложные базовые команды, состоящие из групп ассемблерных команд
3) полностью интерактивная среда, которая может даже эволюционировать в процессе работы
Форт вообще сложно отнести к языку программирования, корректнее относить к языковой среде
Да, при том, что не смотря на большое количество реализаций Форта, он остается таки одним языком.

Автор:  Mihail [ Вс мар 29, 2009 14:45 ]
Заголовок сообщения: 

mOleg писал(а):
вполне себе Форт, ограничений, конечно добавилось

Суть Форта в отсутствии ограничений

mOleg писал(а):
вам не нужен типизированный Форт просто-напросто

Чет типизированный Форт может быть лучше обычного Форта с введенными типами?
Чтобы система программирования бала предпочтительнее Форта, в нее надо вложить
порядок дольше труда чем StrongForth и Фактор вместе взятые.
К примеру, тот-же Питон.

Автор:  mOleg [ Вс мар 29, 2009 23:02 ]
Заголовок сообщения: 

Mihail писал(а):
mOleg писал(а):вполне себе Форт, ограничений, конечно добавилось
Суть Форта в отсутствии ограничений

и САМООГРАНИЧЕНИИ И САМОДИСЦИПЛИНЕ ПРОГРАММИСТА :)

Mihail писал(а):
mOleg писал(а):вам не нужен типизированный Форт просто-напросто
Чет типизированный Форт может быть лучше обычного Форта с введенными типами?

ни чем, но речь о том, что оно не нужно (а уж тем более динамическая типизация тем более)

Автор:  be_nt_all [ Пн мар 30, 2009 09:19 ]
Заголовок сообщения: 

Хищник писал(а):
Напоминает принцип выбора автомобиля по цвету занавесочек в салоне. Красиво, эстетично, модно, и даже от солнца защищает... и получился Запорожец лучше внедорожника.

В общем для начинаемых мной проектов нужны возможности внешнего скриптования с динамической типизацией. Скажем так, это техническое требование...

Поэтому я заинтересовался Фактором, и то что я там нашёл мне понравилось...

А по поводу нужна ли типизация в Форте и вообще в программировании... Мне типизация нужна. Но я себя фортером пока назвать не могу. А с прикручиванием достаточно полного StrongForth к ядру spfork поэкспериментирую и о результатах сюда доложу :)

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