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

...
Google Search
Forth-FAQ Spy Grafic

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




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - Форт-2016 - какой он?
Автор Сообщение
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Каталог ForthStar дополняется.
Сообщение Добавлено: Вт ноя 06, 2018 13:21
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Нуу... я спокоен :D Стагнация налицо, просто собрался междусобойчик без явных достижений.
Сообщение Добавлено: Пн ноя 05, 2018 21:34
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
EuroForth 2018 in Edinburgh 13/10/2018 Video: https://wiki.forth-ev.de/doku.php/events:ef2018:start
Papers: http://www.complang.tuwien.ac.at/anton/ ... 18/papers/
Сообщение Добавлено: Пн ноя 05, 2018 17:01
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Hishnik писал(а):
Лучше бы ориентироваться на независимые от внутренней структуры словарной статьи приемы программирования.
Дык ФИГ-форт местами ориентируется на такое дело лучше всех последующих. К примеру я хочу разнести машинный код отдельно (к примеру в сегменте кода), шитый код отдельно (к примеру в сегменте данных). К примеру я создаю определяющее слово для массива байт на Фиг :
: ARRAY <BUILDS ALLOT DOES> + ;
При этом поле кода слова ARRAY указывает на код DoDOES в сегменте кода, а сразу за полем кода в поле параметров размещен адрес шитого кода после DOES> и DoDOES прекрасно знает с какого адреса ему шитый код исполнять. Если NEXT суть lodsd jmp [eax], то шитый код DoDOES будет исполнять с адреса, который лежит по 4[eax].
А если я пишу в стиле ANSI :
: ARRAY CREATE ALLOT DOES> + ;
то CREATE для других своих применений требует, чтобы в поле параметров ничего еще не было распределено. Значит в первое слово поля параметров адрес шитого кода после DOES> не покласть. И call DoDOES приходится втыкать на место DOES> в определении (после ALLOT и перед +), а поле кода при этом пусть ссылается на этот call. Тогда DoDOES знает с какого адреса ей шитый код исполнять (с адреса возврата что попал на стек). А вот если я хочу весь код укинуть в сегмент кода (а значит call DoDOES в перемешку с шитым кодом нельзя), то получается, что DoDOES адрес с которого исполнять негде взять. Он должен быть на видном месте, только этого видного места нет (в поле параметров нет из-за особенностей CREATE, а на месте DOES> в определении нет, поскольку я хочу машинный код отдельно и втыкать call DoDOES в середину шитого кода нельзя).
И что в итоге имеем. Либо в словарную статью надо ввести еще одно поле для хранения адреса, которое будет использоваться, только у слов созданных с использованием DOES>, а у всех прочих останется без использования и без толку будет место жрать. Или определить особое словечко <BUILDS и вместо CREATE DOES> использовать <BUILDS DOES>. Последнее проще и экономнее, но это ФИГ, а не 79 83 ANSI(94).
Все-таки создатели стандартов 79 и 83, такое впечатление, усредняли существующие на тот момент реализации, а не думали про вообще. При этом унификация CREATE (и для создания полей данных и как пара к DOES>) в какой-то из реализаций их впечатлила. В итоге имеем
- косвенный шитый код позволяет создавать машинно-независимый шитый код и это его замечательная фишка
- если я хочу это достоинство воплотить (а при этом машинный и шитый код неизбежно придется разносить), то CREATE DOES> мне становится сильно неудобным, а вот <BUILDS DOES> из Фиг-форта в самый раз.
Сообщение Добавлено: Вт дек 13, 2016 20:12
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Если слово определено в машинном коде, то этот код обычно и находится в его поле параметров, начинается с адреса этого поля.

Он не будет там находиться, если я собираюсь машинный и шитый код друг от друга разносить, но такие реализации ... я пока и не видел такой ни одной. Только сам пробовал. Об этом ниже
Сообщение Добавлено: Вт дек 13, 2016 19:42
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Выглядит немного по-хакерски. А если машинный код и нет поля параметров? Лучше бы ориентироваться на независимые от внутренней структуры словарной статьи приемы программирования.
Сообщение Добавлено: Пн дек 12, 2016 00:16
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Ethereal писал(а):
Когда-то давным давно CREATE действительно создавало слово, да только еще не видимое в словаре и у которого поле кода указывало на поле параметров. Т.е его ни найти в словаре, ни сразу запустить без краха системы было нельзя. Оно предназначалось для создания средствами Форта слов, определенных в машинном коде. Вот так :
CREATE SINUS
34 C, 65 C, 2C C, 78 C, BA C, 43 C, 4F C,
7E C, 36 C, A2 C, 4D C, 69 C, SMUDGE
где все эти числа суть опкоды процессора.
А для порождения понятий использовались <BUILDS DOES>

Привычный тебе CREATE вот не знаю откуда взялся. Факт, что были разные смыслы у CREATE.
Вот это я когда-то весьма не полно написал. Потому-что из исходника самого FIG-Forth сразу недопонял. Нашел тут немного старых исходников программ, написанных для FIG-Forth, и подсмотрел, что вот эта старинная форма CREATE не только позволяла определить Форт-слово в машинном коде без встроенного ассемблера (как я понял сразу), но и использовалась как привычное нам CREATE, только по другому (чего я сразу недопонял). Например, преобразование номера бита в маску мы бы на ANS-Forth сделали так :
HEX
CREATE MAP 1 C, 2 C, 4 C, 8 C, 10 C, 20 C, 40 C, 80 C,
: BIT2MASK ( n1 -- n2 ) MAP + C@ ;
А на FIG-Forth-э это писали так :
HEX
CREATE MAP 1 C, 2 C, 4 C, 8 C, 10 C, 20 C, 40 C, 80 C, SMUDGE
: BIT2MASK ( n1 -- n2 ) ' MAP + C@ ;
Два отличия выделены.
Просто тогдашняя ' была немедленного исполнения, заменяла собой и ' и ['] , но возвращала не адрес поля кода, а адрес поля параметров. А эти байты 1 2 4 8 10 20 40 80 как раз и уложились бы с начала поля параметров. Так-что нормальное было CREATE , только использовалось по другому и сразу в двух смыслах - для таблиц и для низкоуровневых определений. Такой универсализм.
Сообщение Добавлено: Сб дек 10, 2016 23:00
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Hishnik писал(а):
Власть в Форте валяется на земле, и нет такой силы, которая могла бы владеть ей единолично!

Совершенно не планировал давать на это отсылку, но только сейчас вспомнил легенду о Микуле Селяниновиче, спокойно носившем суму с тягой земной, которую не мог поднять ни один богатырь. Идея очень проста - пахарь, постоянно работающий на земле, может сделать то, что не под силу никаким гениям, комитетам и прочим ярким личностям. Поэтому проекты, проекты и еще раз проекты...
Сообщение Добавлено: Пт сен 30, 2016 15:36
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
diver писал(а):
ACS Forth (Asian Continental Standart Forth) :idea: !

ASTF - Asian Stack Texnology Forth :) (AiST Forth) (AISF - но это уже не оригинально) I - Immediate.

P.S. И пусть поисковики "рухнут с дуба" расшифровывая понимание ещё одной Форт абревиатуры и ища перекрёстные ссылки!
Не оставим Big Data без работы! :) Стек технологий, правда, тоже уже затёртое до дыр словосочетание.

P.P.S. И другая правда - кто то может родится, жить в Европейской части континента.

Hishnik писал(а):
Да здравствует свобода, которая есть осознанная необходимость!

@"Учение свет, а не ученье чуть свет и на работу!"
Сообщение Добавлено: Пт сен 30, 2016 15:00
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
diver писал(а):
ACS Forth (Asian Continental Standart Forth)

Или ANS - Asian New Standard :) Впрочем, можно сразу Мультигалактический Стандарт Форта, и пусть недовольные жители систем Сириуса и Бетельгейзе прямо заявят о своем недовольстве.
diver писал(а):
и тем самым формируем пятую колонну молодых специалистов, готовых поднять и гордо нести знамя форт-революции в железе и софте!

Никаких пятых колонн! Можно подумать, это революция какая-то затевается. Власть в Форте валяется на земле, и нет такой силы, которая могла бы владеть ей единолично! Да здравствует свобода, которая есть осознанная необходимость!
Сообщение Добавлено: Пт сен 30, 2016 14:44
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
:< :work;
В ситуации, когда Европа уже не может жить по новому, а сообщество фортеров не хочет жить по старому, когда ANS незаслуженно угнетает рядовых фортеров-труженниковкогда все в растерянности замерли мы, Гильдия свободных фортеров Восточного края, должны взять ситуацию в свои руки, и должны действовать быстро и решительно!

А потому - проводим :idea: Всеазиатский съезд фортеров, и выпускаем новый, революционный, справедливый стандарт - :idea: ACS Forth (Asian Continental Standart Forth) :idea: ! Внедряем ACS Forth в образовательный процесс университетов и институтов стран Шанхайской Оргагизации Содружества и тем самым формируем пятую колонну молодых специалистов, готовых поднять и гордо нести знамя форт-революции в железе и софте!
Сообщение Добавлено: Пт сен 30, 2016 09:36
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
KPG писал(а):
Т.е. факт субъективного суждения.

У всех суждение субъективно. Оно от этого не становится автоматически ни истинным, ни ложным. А вот такая сепарация на уровне "не нравится - объявлю субъективным, и в силу этого проигнорирую" - она скорее самообман. Не надоело мечтать о Просвещенной Европе, которая облагодетельствует стандартом?
Сообщение Добавлено: Пт сен 30, 2016 02:00
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Hishnik писал(а):
KPG писал(а):
Забавно, и кто же этот незнакомец с Форт продуктом мирового уровня? Что пропущено?

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

Т.е. факт субъективного суждения. :shuffle;
Сообщение Добавлено: Чт сен 29, 2016 14:02
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
KPG писал(а):
Забавно, и кто же этот незнакомец с Форт продуктом мирового уровня? Что пропущено?

Понятия не имею :) Но такое ощущение, что многие хотят им стать, а для этого почему-то не пишут программы, а проверяют совместимость с документом, выпущенным европейцами, ни один из которых в выпуске продукта мирового уровня замечен не был.
Сообщение Добавлено: Чт сен 29, 2016 13:32
  Заголовок сообщения:  Re: Форт-2016 - какой он?  Ответить с цитатой
Hishnik писал(а):
Но это ведь не ко мне вопрос. Я уже не первый год пытаюсь донести мысль, что совместимость с ANS сама по себе не гарантирует триумфального выхода на мировой рынок с форт-продуктами.

Забавно, и кто же этот незнакомец с Форт продуктом мирового уровня? :o Что пропущено?
Сообщение Добавлено: Чт сен 29, 2016 13:25

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


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