Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт дек 13, 2018 22:47

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 104 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 24, 2009 02:16 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4956
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
вопрос писал(а):
топики нужно бы создавать по отдельности

да хоть десять! :)

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


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

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


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

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

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

Хищник писал(а):
Mihail писал(а):
Это возможность размещать в рамках форт-системы
трансляторы/интерпретаторы других языков. При этом, может существовать доступ к базовой форт-системе.

Еще раз - у всех Тьюринг-полных языков есть такое "преимущество". Разница в трудоемкости.

Т.е. есть, любой компилятор Си может, желаемым образом, воспринять форт вставку в исходном тексте?

Хищник писал(а):
Можно ли добиться благосклонности женщины,

Из этого что, тоже не следует, что Форт мало кому нравится?

Хищник писал(а):
"ну Форт же тоже может"

Форт не просто может, а может точно так-же


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

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


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


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

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2120
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 40 раз.
Mihail писал(а):
Ограничить доступ к форт-системе можно средствами той-же форт-системы.
Это может решить проблему несовместимости меду библиотеками. Как в рамках одной
системы, так и меду системами. Но нне не нравятся фатальные ограничения.
По мне, достаточно защиты от дурака.

Ограничение доступа к транслятору приведет к снижению эффективности форт-системы как инструмента разработки.
У форта все-таки свой путь развития.
А так... Ну можно, например, наложить системный запрет на записи типа этой:
Код:
: 1  2 ;
и что-то в том же духе, и все пожалуй. Кроме-того, каждое ограничение скажется на эффективности кода.
А в форте нет backend'a в общепринятом понимании для компенсации последствий таких ограничений.

_________________
С уважением, chess


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

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1256
Благодарил (а): 3 раз.
Поблагодарили: 17 раз.
Каждый хочет что-то своё, со своими особенностями - то, что нужно именно ему и Форт позволяет это достаточно легко и быстро реализовать. В то время как мэйнстрим-ЯП - это обобщение желаний группы совершенно разных людей. Форт - инструмент, подстраиваемый под конкретную Личность, мэйнстрим - инструмент, усреднённый для какого-то своего среднестатистического пользователя. Перемещение Форта в мэйнстрим лишит его главной концепции.

_________________
Cтоимость сопровождения программного обеспечения пропорциональна квадрату творческих способностей программиста.
Роберт Д. Блисc


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

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6454
Благодарил (а): 14 раз.
Поблагодарили: 101 раз.
Mihail писал(а):
Т.е. есть, любой компилятор Си может, желаемым образом, воспринять форт вставку в исходном тексте?

Существует возможность написать на Си транслятор Форта. И наоборот.
Mihail писал(а):
Хищник писал(а):
Можно ли добиться благосклонности женщины,

Из этого что, тоже не следует, что Форт мало кому нравится?

А разве следует? Если к мужчине не проявляют пламенных чувств 2-3 миллиарда женщин, он теперь никому не нужен?
Mihail писал(а):
Форт не просто может, а может точно так-же

Если "точно так же", то зачем вообще дергаться? Есть смысл активно развивать именно отличающиеся свойства.


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

Зарегистрирован: Вт май 09, 2006 12:31
Сообщения: 3438
Благодарил (а): 5 раз.
Поблагодарили: 16 раз.
Цитата:
Если "точно так же", то зачем вообще дергаться? Есть смысл активно развивать именно отличающиеся свойства.

Я тоже так думаю... Но вот какие именно? :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 24, 2009 21:27 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4956
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
chess писал(а):
Ну можно, например, наложить системный запрет на записи типа этой:
Код:: 1  2 ;

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

С другой стороны есть форт с типизацией данных, собственно StrongForth (и не совсем форт, но очень близкий к нему postscript)
особенность лишь в том, что оно ведь не особо надо.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


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

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
chess писал(а):
Код:
: 1 2 ;
и что-то в том же духе, и все пожалуй.


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


chess писал(а):
Кроме-того, каждое ограничение скажется на эффективности кода.


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


VoidVolker писал(а):
Перемещение Форта в мэйнстрим лишит его главной концепции.


Форт нужно не перемещать, а расширять ничего не теряя.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 24, 2009 22:31 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4956
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
Mihail писал(а):
Форт нужно не перемещать, а расширять ничего не теряя.

охохох, как же тяжело.

на самом деле надо бы рассматривать ядро форта отдельно от пакета.
развитие ядра и развитие библиотек таки несколько разные вещи.
как и вопросы совместимости, на которые приходится "забивать" развивая систему.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Ср мар 25, 2009 02:36 
Не в сети
Administrator
Administrator
Аватара пользователя

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

Я тоже так думаю... Но вот какие именно?

Трансляция текста Фортом легко может дать тот же эффект, что и различные плагины, макросы, "самозагружающиеся" форматы. Программист на чисто компилирующем продукте (не языке, именно инструменте) частенько озабочен решением проблем привязки интерфейса к функционалу. Функционал - дело тонкое, только очень малоопытный пользователь визуальных средств разработки засунет всю математику прямо в обработчик OnClick. У мало-мальски опытного математика будет лежать отдельным модулем, а потом он будет осторожно, но быстро делать интерфейс. Осторожно - потому что заказчик может двадцать раз покривиться и заставить переделывать. А быстро - потому что без интерфейса сам программист не может толком попробовать свою математику. С Фортом же проблема интерфейса на этапе разработки существенно сглажена интерактивным характером форт-среды. Написали = запустили. Понравилось - запустили в цикле. Убедились - пошли дальше, не оставив в проекте никаких лишних сущностей. Итого, сложность межмодульных связей растет у Форта медленнее по сравнению с классическим мейнстримом. Этим свойством и можно пользоваться.

Далее, имеются у нас всяко-разные SDK. И с Фортом, разумеется, хочется сделать так же - чтобы он и сеть видел, и с базами данных работал, и графика была бы и много чего еще. И вот тут кроется опасность неправильного позиционирования. Собственно, уже прошли те времена, когда языки сравнивались по количеству операторов в них, или по скорости выполнения кода. Проекты большие, памяти много больше 640 кб, время разработчика дорого, цена их ошибки тоже больно бьет по карману работодателя. И фирмы-разработчики инструментальных средств уделяют достаточно много внимания поддержке, обучению и сопровождению. То есть увеличение числа функций в SDK тоже идет своим чередом, но чтобы "не отрываться от народа", все это сопровождается регулярными разъяснениями, как, зачем и для чего. А главное, какие полезные программы можно было бы написать с помощью новых версий продукта. И выбор между системой разработки с какими-то захватывающими дух изюминками, но неубедительно представленными перспективами, и системой, рядовой в общем смысле, но дающей разработчику некие гарантии получения на выходе ценного продукта, будет в пользу "крепкого середнячка", а не "чуть психованного гения". Вот я был на месте новичка в OpenGL, когда начинал писать кварк. И что, я ориентировался на характеристики библиотек в плане работы с вершинными шейдерами и мультитекстурированием? Ха! До этого мне и сейчас семь верст лесом. Но что интересно - трехмерные сцены, наложение текстур, освещение и прочее я вскоре сделал и сам, разобравшись в самом предмете. Это очень важно - любые формальные характеристики, какими бы замечательными они ни были, повиснут мертвым грузом без четко прочерченного пути к конкретным действиям. Что толку, что в языке есть потрясающие возможности, если потенциальный программист на нем не знает, как до них докопаться? Вот поэтому я полагаю бесполезным занятием "накручивание концепций" и некое абстрактное "развитие".


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

Зарегистрирован: Пн ноя 27, 2006 22:09
Сообщения: 115
Откуда: Ростов-на-Дону
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Раз уже сравнивать с Питоном, то нельзя не вспомнить Фактор http://factorcode.org/. Для меня в собственно форте слишком многое унаследовано от ассемблера -- в ядре языка нет проверки типов, ни статической, ни динамической. А с метапрограммированием и прочей факторизацией - да всё Ок. Так вот Фактор -- это как раз динамическая типизация. Проект достаточно зрелый ООП, оптимизирующий компилятор a la Common Lisp, хороший набор достаточно связанных (в отличии о папки devel) библиотек, включая GUI kit, http сервер с веб-фреймвоком, синтаксический БНФ-парсер для подключения отличных от форта/фактора синтаксисов и многое другое.

Есть и версии фортоподобных языков со статической типизацией Cat, StrongForth (для последнего есть прототип реализации в виде библиотеки ANSI-Forth), но они менее зрелые.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт мар 27, 2009 13:32 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 4956
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 18 раз.
Поблагодарили: 56 раз.
be_nt_all писал(а):
Для меня в собственно форте слишком многое унаследовано от ассемблера -- в ядре языка нет проверки типов, ни статической, ни динамической.

сколько же можно писать эту глупость! Форт ничего не унаследовал от ассемблера = это совсем разные идеалогии.
Типизация в Форте возможна, но нафиг не нужна никому.

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

со всеми вытекающими, кстати, уж тогда лучше Postscript смотреть, а не фактор.

be_nt_all писал(а):
Есть и версии фортоподобных языков со статической типизацией Cat, StrongForth (для последнего есть прототип реализации в виде библиотеки ANSI-Forth), но они менее зрелые.

и в реальности абсолютно бесполезны

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт мар 27, 2009 14:18 
Не в сети
Аватара пользователя

Зарегистрирован: Пн ноя 27, 2006 22:09
Сообщения: 115
Откуда: Ростов-на-Дону
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
mOleg писал(а):
сколько же можно писать эту глупость! Форт ничего не унаследовал от ассемблера = это совсем разные идеалогии.
Типизация в Форте возможна, но нафиг не нужна никому.

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

mOleg писал(а):
be_nt_all писал(а):
динамическая типизация.

со всеми вытекающими, кстати, уж тогда лучше Postscript смотреть, а не фактор.

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

be_nt_all писал(а):
и в реальности абсолютно бесполезны

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

зы. В основном именно из за этого (+, D+, F+) у меня серьёзные отношения с Фортом так и не сложились. К тому же свободная работа с так называемыми "цитатами" - анонимными функциями, в том числе возможномть положить их на стек и передать куда нибудь расширяет степени свободы программиста.

ззы. Про фактор есть соседняя тема, можно перенести дискуссию туда.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 104 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.

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


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

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


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

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