Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт июл 10, 2020 16:02

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Чт фев 13, 2020 12:14 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1002
Благодарил (а): 1 раз.
Поблагодарили: 8 раз.
Эх, и почему тут нет гулейфра.
Он бы сейчас пригодился в кой-то веке

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Пт май 29, 2020 19:37 
Не в сети
Аватара пользователя

Зарегистрирован: Ср фев 23, 2011 20:42
Сообщения: 595
Откуда: Карелия
Благодарил (а): 3 раз.
Поблагодарили: 24 раз.
zma писал(а):
Кроме перечисленных проблем есть ещё одна банальная - очень легко что-то забыть на стеке возвратов перед выходом из определения и обрушить таким образом программу. И отлаживать это не очень просто.
Это вообще не проблема. Ошибка, обваливающая программу, это самая благодарная ошибка. Сразу находится и исправляется. А вот если ошибка программу не рушит, только искажает результаты работы программы, да еще и при определенных условиях, вот это жопа. Ее можно не заметить сразу, так и оставить в программе.
Hishnik писал(а):
которая формирует риски неправильного поведения по меньшей мере в двух вариантах:
Язык программирования - это все таки еще и некоторая модель компьютера. Форт - это фон-неймановская модель с одинаковой разрядностью стека возвратов и данных и если гарвард, то приходится делать особый Форт, а не просто Форт. Точно также если разрядность стека возвратов не совпадает с разрядностью стека данных, ну так это особый Форт. Который никак не формализуется, ибо он - исключение, характер которого может быть разным и заранее не предсказуем.
Смысла ради исключений кастрировать основу Форта нет. Или реализуй модель Форта, пусть и за счет накладных расходов или делай исключение. И если у тебя исключение, нужно то, что >R R> нельзя пихать данные просто знать и действовать соответственно.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Пт май 29, 2020 22:52 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6942
Благодарил (а): 17 раз.
Поблагодарили: 112 раз.
Ethereal писал(а):
Форт - это фон-неймановская модель с одинаковой разрядностью стека возвратов и данных и если гарвард, то приходится делать особый Форт, а не просто Форт. Точно также если разрядность стека возвратов не совпадает с разрядностью стека данных, ну так это особый Форт.

Посмотрел - у меня все форт-продукты гарвардские. Это или изначально раздельные области памяти для кода и данных, или просто гарвардский форт-процессор. В котором месте там проблема, не вижу, а вот решается много чего. По крайней мере, давние эксперименты с фоннеймановской моделью наглядно проявляли проблемы, элементарно решаемые отделением памяти данных - например, выделение адресуемой области памяти в процессе создания слова.
Ethereal писал(а):
И если у тебя исключение, нужно то, что >R R> нельзя пихать данные просто знать и действовать соответственно.

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

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

Мура многовато в Форте, и это проблема тех, кто к нему взывает. Обсуждение Паскаля гораздо реже переводят на личность Вирта, хотя заслуги Вирта в computer science существенно больше таковых у Мура и не сводятся к "изобрел язык".
Ethereal писал(а):
Он тебя улучшать им сделанное не нанимал.

Мур и не смог бы меня нанять :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Пн июн 01, 2020 18:41 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5012
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 21 раз.
Поблагодарили: 58 раз.
Ethereal писал(а):
Точно также если разрядность стека возвратов не совпадает с разрядностью стека данных, ну так это особый Форт. Который никак не формализуется, ибо он - исключение, характер которого может быть разным и заранее не предсказуем.
Смысла ради исключений кастрировать основу Форта нет.

Тут я не очень согласен, хотя вопрос, что же делает Форт Фортом, вроде как, не имеет однозначного ответа.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Ср июн 03, 2020 02:42 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6942
Благодарил (а): 17 раз.
Поблагодарили: 112 раз.
mOleg писал(а):
что же делает Форт Фортом, вроде как, не имеет однозначного ответа.

Ну уж разрядность команд и данных не является отличительной особенностью языка.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Ср июн 03, 2020 10:03 
Не в сети
Moderator
Moderator
Аватара пользователя

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

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Ср июн 03, 2020 10:14 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1002
Благодарил (а): 1 раз.
Поблагодарили: 8 раз.
mOleg писал(а):
А что гарантированно является?

Слова разделенные разделителем.
Например пробелом.

И то не факт :))

mOleg, кстати, не желаете написать пару слов о своем форке на Вики?

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Ср июн 03, 2020 13:43 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6942
Благодарил (а): 17 раз.
Поблагодарили: 112 раз.
mOleg писал(а):
А что гарантированно является?

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

Для сравнения, Си имеет реализации для платформ, кардинально отличающихся по аппаратной архитектуре. Там и фон Нейман, и гарвард, и SHARC, и банки памяти, и разрядность от 8 до 64... и на формат входного языка это оказывает только опосредованное влияние.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Ср июн 03, 2020 18:36 
Не в сети
Moderator
Moderator
Аватара пользователя

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

И все же? Что делает Форт именно Фортом, а, не, скажем DSSP ?

Hishnik писал(а):
Вот только определение "Форт - язык программирования, у которого разрядность данных равна разрядности адресов команд" корректным не выглядит.

тут согласен, тем более, что даже в рамках традиционного Форта проблема с неравенством битовой разрядности чисел легко обходится.

Hishnik писал(а):
Такие характеристики, как "стековый", "регулярная грамматика", "конкатенативная компиляция" уже ближе.

нуу, не знаю.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Ср июн 03, 2020 18:38 
Не в сети
Moderator
Moderator
Аватара пользователя

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

И то не факт :))

я о том же.

Victor__v писал(а):
mOleg, кстати, не желаете написать пару слов о своем форке на Вики?

пока не хочется. Мне не нравится формат вики.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Ср июн 03, 2020 20:28 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6942
Благодарил (а): 17 раз.
Поблагодарили: 112 раз.
mOleg писал(а):
И все же? Что делает Форт именно Фортом, а, не, скажем DSSP ?

Я ради интереса поискал "распознаватели языка программирования". Не в смысле компиляторов, а в смысле "по фрагменту текста понять, что это". Так везде упоминают, что задача не такая простая. Скажем, Бейсик от С# отличить можно, а вот диалекты Си, если там напрямую не используются специфичные вещи - уже не очень. Поэтому для разработчиков, видимо, удобнее ориентироваться на возможности реализованного движка.

mOleg писал(а):
Hishnik писал(а):
Такие характеристики, как "стековый", "регулярная грамматика", "конкатенативная компиляция" уже ближе.

нуу, не знаю.

Прямое указание, что сделан стек, разбор входного потока идет по пробелам, код компилируется "склейкой" - это уже вполне архитектура программы. Безобидное с точки зрения синтаксиса предложение вполне может привести к необходимости кардинальной переделки транслятора. На уровне "у вас в аквариуме уже 10 гуппи и 5 меченосцев, почему вы так против добавления всего одного бегемотика?"


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Пт июн 05, 2020 14:52 
Не в сети
Аватара пользователя

Зарегистрирован: Чт апр 26, 2007 21:09
Сообщения: 289
Благодарил (а): 12 раз.
Поблагодарили: 10 раз.
Hishnik писал(а):
...

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Пт июн 05, 2020 15:26 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 1201
Благодарил (а): 3 раз.
Поблагодарили: 44 раз.
Wlad писал(а):
Hishnik писал(а):
...

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

Без классики Форт- шитого кода Форт можно представить, без стэков это уже сложно, но как "фикс" идеи Форта - возможно. :)

P.S. А, вообще, в моём понимании Форт делает Фортом именно те решения в его дизайне определяющие его как Форт-систему.
Что и для чего значимо или недостаточно в Форт решается индивидуально, но например, для меня Форт состоялся как саморасширяющийся язык, что и отражено в заглавной странице местного форума. :)
(а по факту, как наиболее простая и мощная парадигма программирования не ограниченная синтаксическими условностями.
Все условности в понимании Форт применения отдельным Форт пользователем.)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Стек возвратов - норма или хак?
СообщениеДобавлено: Пт июн 05, 2020 18:51 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 6942
Благодарил (а): 17 раз.
Поблагодарили: 112 раз.
KPG писал(а):
Без классики Форт- шитого кода Форт можно представить, без стэков это уже сложно, но как "фикс" идеи Форта - возможно.

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


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

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


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

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


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

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