Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт мар 29, 2024 19:37

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Пт окт 06, 2006 14:38 
Не в сети

Зарегистрирован: Вт окт 03, 2006 11:36
Сообщения: 8
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
kufal писал(а):
Сложилось такое впечатление - что у всех только одно желание - это посмотреть исходный текст си реализации форта, и ничего другое не интересует. Мой же изначальный интерес был - это узнать мнение о том какой Forth я сделал - что бы вы хотели увидеть в этой реализации, что нужно добавить что изменить


Мне очень нравится идея языка Forth, как он просто и элегантно реализован. В свое время с удовольствием его изучил и так-же с удовольствием написал свою версию. Сейчас я бы не с меньшим удовольствием сделал бы тоже самое, т.е. например написал версию для КПК. И как мне кажеться большинство программистов, заинтересовавшихся Фортом, привлекает именно простота его реализации. Вот 'все' и делают свою версию. А что касается использования (написания программ на Форте) ... Вот до этого мне кажется мало кто доходит серьезно. Я сам реально так и не использовал Форт для написания серьезных программ. Конечно несколько небольших, пробных программок я сделал, но это не считается. Это было типа проверки работоспособности или типа теста. Хотя достаточно часто мысли возвращаются к идее как-то задействовать Форт в реальной работе. Возможно это связано с немного другим мышлением при написании программ на Форте по сравнению с обычными языками. Возможны еще какие-то причины. Тут долго можно дискутировать, а я это особо не люблю. Если коротко, то моя мысль сводится к тому, что среди программистов знающих Форт (а и таких не особо много), реально пишут на нем очень маленький процент (Но это мое субьективное мнение, возможно я и ошибаюсь). Поэтому, для использования, Форт не сильно востребован. А что касается КПК, то на нем писать программы, не важно на каком языке, само по себе не удобно. Т.к. достаточно проблемматично вводить много текста. Поэтому на КПК реально Форт тем более не будет востребован. Даже если я напишу свою версию Форта на КПК и получу удовольствие от этого процесса, то я уверен что реально пользоваться этим не буду. Поэтому и нет особых откликов и мнений о твоей реализации Форта на КПК. А если ты все-таки хочешь услышать от людей советы, то наверное нужно сначала определиться, для чего он там будет использоваться? Прямо на КПК вряд-ли будут программировать. Разве что иметь возможность писать программы на обычном компьютере и чтобы они потом могли запускаться в виде исходных текстов на КПК? Но как-то это тоже не очень. Скорее уж делать кросс-версию, чтобы на десктопе разрабатывать/отлаживать программу и результат генерировать в виде exe-шника для КПК. Или я не прав и можно как-то использовать Forth именно на КПК? И если писать программы на Форте для КПК, то какие? Игры? Каки-то утилиты? Если понять это, тогда уже будет и понятнее что не хватает в версии для КПК. Например для игр нужна хорошая работа с графикой. А может программы будут с базами данных связаны - чтобы вести какие-то расходы, контакты, что-то еще такое. Все таки КПК это типа записной книжки, основное назначение которой хранить информацию. В этом случае нужна удобная работа с базами данных. Ну и т.д. Но опять же - не проще ли на десктопе готовит ехе-шник, чем закачивать тексты на КПК и там их загружать? А если делать просто из интереса, чтобы просто была версия Форта и для КПК, а будут ли ее использовать или нет и как - дело десятое, то тогда и не особо важно что в ней будет и чего нет. Тогда и советовать особо нечего, что там должно быть.
Да-а. Вот такие вот достаточно грустные мысли я изложил, хотя и сам не рад этому. :)

PS. Кстати, ничего что я Forth пишу то по английски, то по русски. А то как-то сам не могу определится как лучше. По русски вроде удобнее.

_________________
Вадим.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт окт 06, 2006 14:52 
Не в сети

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

kufal писал(а):
И мне кажется , я даже уверен - если человек хоть раз реализовывал Forth сам на каком-либо языке программирование - желание увидеть исходный код не появиться, за исключением некоторый моментов реализации


Желание увидеть исходный код чего? На любой исходный код пропало желание смотреть?
Я всегда просматриваю попавшиеся мне реализации форт-систем, чтобы понравившееся
перенести в СПФ.
Что касается http://kufal.narod.ru/f.rar
Написал-бы назначение основных файлов. Еще тестовый пример следует предоставить.
Сам-то ты как-то проверял?
Во первых создается впечатление, что ты незнаком ни с одной реализацией форт-системы.
Все как-то по своему. Тормоза дикие, преимущества я пока оценить не в состоянии.
Я подозреваю, что Push_AS и Pop_AS это дизассемблированные паскалевские программы.
На таком низком уровне проверять переполнение/исчерапние очень расточительно.
А если проверяешь, то вызывай аварийное завершение при нарушении заданных пределов.

В паскале как и форте принято использовать строку со счетчиком.
Почему ты используешь '0' завершитель строки?


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
LV писал(а):
Т.к. достаточно проблемматично вводить много текста. Поэтому на КПК реально Форт тем более не будет востребован.


Скорее наоборот :)
На Форте писать - короче получается - меньше текста вводить.

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

Зарегистрирован: Вт окт 03, 2006 11:36
Сообщения: 8
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
WingLion писал(а):
На Форте писать - короче получается - меньше текста вводить.


Не спорю :) . По сравнению с другими - короче. Но тем не менее для написания более менее 'программы', нужно ввести достаточно много буковок :)

_________________
Вадим.


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
ПРОГРАММА - 9 буковок :))
Можно сократить до ПРОГА :)
Я вот, думаю взять какой-нибудь КПК именно, чтобы тексты вводить, когда к компу доступа нету...
И пофиг, что неудобно, Давно надо научить компы голос воспринимать :)

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Mihail писал(а):
В паскале как и форте принято использовать строку со счетчиком.
Почему ты используешь '0' завершитель строки?


Это нормальное современное решение. Преобразовать ASCIIZ в c-addr size можно элементарно. Но ограничения на 255 символов, как в паскалевских строках, нет.


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

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Хищник писал(а):
Это нормальное современное решение. Преобразовать ASCIIZ в c-addr size можно элементарно. Но ограничения на 255 символов, как в паскалевских строках, нет.


И ужасно тормозное 8(
лучше длинну счетчика увеличить в два раза 8)
всеравно на выравнивание больше места расходуется.
А еще лучше счетчик + Z в конце, так сейчас почти все форт-системы современные делают


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

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Я сейчас использую 4-байтный счетчик и 0 в конце. И строки передаются в основном по адресу первого символа (со смещением -4 байта находится счетчик). Но в любом случае, многие системные вызовы предпочитают ASCIIZ.


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

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Хищник писал(а):
Я сейчас использую 4-байтный счетчик и 0 в конце. И строки передаются в основном по адресу первого символа (со смещением -4 байта находится счетчик). Но в любом случае, многие системные вызовы предпочитают ASCIIZ.

Кстати такой подход по-моему самый правильный.
Можно не только со строками так работать, но и с более-другими 8) данными


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

Зарегистрирован: Сб май 06, 2006 12:01
Сообщения: 959
Откуда: Украина, Харьков
Благодарил (а): 2 раз.
Поблагодарили: 7 раз.
Проблемы ввода для мобильных устройств
WingLion писал(а):
И пофиг, что неудобно, Давно надо научить компы голос воспринимать

Я пробовал проги распознавания речи Dragon Dictate, которые хвалили в начале 2000хх.
То ли микрофон у меня никакой, то ли еще что, но только несколько слов удалось распознать готовой(уже сделанной и продаваемой) обученной распознавалкой. При этом ее еще учить и учить... :(
Хороших(и бесплатных!) говорилок на РС тоже не встретил - все говорят настолько коряво... И старое spp.exe имхо читает примерно также, если не лучше, занимая всего 30322 байт на диске! Жаль только, что там не все нужные режимы есть... :(. Помнится мне, это кусок из какого-то речевого пакета... Если у кого-то есть полный пакет - меня ооочень интересует. Особенно вариант встраивания в телефонную J2ME! ;)
Про рукописный ввод могу сказать то же самое. То, что я пробовал - с детским дижитайзером - по распознаванию тоже никакая.
Граффити, правда, работает, ее на КПК пробовал последний раз позавчера. И на качество распознавания пожаловаться нельзя... :)
Как приспособить Dasher(http://www.inference.phy.cam.ac.uk/dasher/russian/) для ввода текстов в телефон, еще не придумал. :( - слишком много кнопок нажимать... :(
Единственное, что могу предложить - программы должны не писаться, а собираться, как например, в HiAsm(http://hiasm.hexshock.com/index.php). Тогда нажатий (если предлагать выбрать из сортированных по вероятности связей) будет меньше!!

Варианты свой клавой, как в colorForth тоже возможны, но прийдется вырабатывать стандарт и долго учится... :(
Свой язык (искусственный язык для общения с компом) решил бы проблему количества нажатий, ведь надо всего ~2000-3000 понятий, но это дело будущего, я пока только прикидываю, как это можно сделать. Доступных подробных работ по лингвистике в электронном виде мне не попадалось... :(

_________________
With best wishes, in4.


Последний раз редактировалось in4 Пн окт 09, 2006 14:17, всего редактировалось 1 раз.

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 09, 2006 10:14 
Вот Форт к PDA.
http://www.tarunz.org/~vassilii/pub/


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

Зарегистрирован: Пт май 05, 2006 06:19
Сообщения: 192
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
нифига не пашла версия fort_kufal на mitac mio a700,
просто в дикие тормаза все падает
лечитса перезагрзкой

_________________
SPF


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

Зарегистрирован: Вт май 02, 2006 13:19
Сообщения: 3565
Откуда: St.Petersburg
Благодарил (а): 4 раз.
Поблагодарили: 72 раз.
in4 писал(а):
Хороших(и бесплатных!) говорилок на РС тоже не встретил - все говорят настолько коряво...


Вот, на счет говорилок, имхо, лучшая (и бесплатная!) "Говорилка": http://www.vector-ski.ru/vecs/govorilka/
Даже со всеми имеющимися недостатками, она все равно, отличная говорилка!
Я с ее помощью уже несколько лет тексты читаю... лежа...
И свои правлю с ее помощью, читает-читает - бац,
на слух пролетает ляп, останавливаю и правлю текст...

_________________
С уважением, WingLion
Forth-CPU . RuF09WE
Мой Форт
Отсутствие бана это не заслуга юзера, а недоработка модератора (с)


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

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
kufal писал(а):
http://kufal.narod.ru/forth.htm - новая версия, в основном новое для Windows, исходники есть для Linux.


Во первых восприятие входного потока происходит на уровне Си.
Это приводит к тому, что невозможно обработать исключительную ситуацию
на уровне Форта, изменить синтаксис. Непонятно, чем обусловлен уход от стандарта?
Я не вижу какого-нибудь преимущества над http://devbiol.zoo.uwo.ca/~kvt/relf01.zip

Цитата:
Хочу прочитать ваши предложения по улучшению - не ваше отношение ко всему этому, а конкретные преложения


Прежде чем улучшать нужно разобраться с тем что сделано.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн мар 19, 2007 18:15 
Ну для лексического анализа взята готовая схема из учебника которая натаскивает студентов на то "как нужно делать компиляторы". Последовательность (массив, список) токенов, их распознование сделаны не по-фортовски. При этом последние слова пред. предложения не взял в кавычки потому что это реально ограничивающий недостаток, а не идеологический контр-аргумент.

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

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

-- И слава Будде!.. - восклицаем дальше мы.

И я уже не говорю о том что набор слов (про словари вообще грустно помолчим) впечатаны в программу.

Андрей Черезов на мой взгляд в своём "Слове о Форте" довольно ощутимо "коснулся" того как нужно писать интерпретаторы Форта (если хотите это можно назвать "лексическим анализатором").

(не сочтите за высоколобое поучение, в принципе туда-сюда: сам вспоминаю как я за часа за три на Borland Pascal в классе написал что-то подобное, хотя и тоже из книжек натырил, в моём случае это был: Боон, "Паскаль -- это просто")


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

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


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

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


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

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