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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 87 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вс май 26, 2013 20:22 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
KPG писал(а):
В SPF4, например, встроен макро-оптимизатор

Так называемый макрооптимизатор на самом деле представляет собой набор фрагментов кода, собранных конкретно для x86. Для другой платформы их придется писать заново. При разработке низкоуровневых определений не стоит полагаться на написание универсального низкоуровневого текста, который будет как-то автоматически находить эффективное решение для разных архитектур. В конце концов, для этого существуют целые группы инструментальных средств, абстрагирующиеся от архитектуры - ЯВУ, виртуальные машины. Почему бы не попробовать написать Форт целиком на Perl и посмотреть, что получается?



За это сообщение автора Hishnik поблагодарил: Majestio
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вс май 26, 2013 20:31 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Хищник писал(а):
Почему бы не попробовать написать Форт целиком на Perl и посмотреть, что получается?

А разве существующие реализации на разных языках не достаточно информативны? Будет ещё один кросс компилятор.
Даже написанные на C реализации, при всей своей продвинутости, не так эффективны по быстродействию как могли быть.

P.S. Макрооптимизатор в SPF4 достаточно сильно привязан к X86, но это не причина чтобы макро аппарат не использовать
для разных CPU. Некоторые оптимизации тривиальны и легко осуществимы для существующих целевых процессоров.
(Форт процессор в FPGA не в этой группе)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вс май 26, 2013 21:04 
Majestio писал(а):
Если рассматривать создание Форт-среды по данному стандарту с нуля, не с Форта 3.х. Какую часть стандарта придется писать в машиных командах (или на другом языке, с последующей компиляцией), а какую уже можно будет продолжать на самом Форте?
Я рассматривал следующие фазы:
0. основные формализмы
1. написание Forth-подобных макросов
2. писание в макросах до слова INTERPRET
3. писание текста
Все, что создано в (1-2) придется компилировать. Поэтому искусственно сокращать (1) не имеет смысла, тут главное удобство (не на программаторе же пишем).


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вс май 26, 2013 21:48 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
KPG писал(а):
А разве существующие реализации на разных языках не достаточно информативны? Будет ещё один кросс компилятор.
Даже написанные на C реализации, при всей своей продвинутости, не так эффективны по быстродействию как могли быть.

А тут вопрос сводится к тому, какие задачи должен решать новый вариант Форта. Надо ведь уже определиться, в каких пропорциях должны быть соблюдены требования к быстродействию, размеру, переносимости, функциональности и прочему.
KPG писал(а):
Макрооптимизатор в SPF4 достаточно сильно привязан к X86, но это не причина чтобы макро аппарат не использовать
для разных CPU.

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


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

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
mOleg писал(а):
4.3 Представление символов

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


Шесть байт на символ - мне кажется ну совсем перебор.
UTF-16 по идее еще и внукам будет многовато. :?

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вс май 26, 2013 22:16 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Majestio писал(а):
Шесть байт на символ - мне кажется ну совсем перебор.
UTF-16 по идее еще и внукам будет многовато.

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

Мне кажется, что само использование Perl в качестве инструментального средства определенным образом повлияет не только на ход разработки, но и на характеристики форт-системы. Например, интерфейс с ОС, предоставляемый Perl, вполне можно использовать, и адаптировать к нему разрабатываемый Форт.



За это сообщение автора Hishnik поблагодарил: Majestio
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Пн май 27, 2013 10:34 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Majestio писал(а):
Шесть байт на символ - мне кажется ну совсем перебор. UTF-16 по идее еще и внукам будет многовато.

вообще, UTF16 тоже фигово, имхо, лучше UTF32.
Да, буквы длиннее, но, зато всегда одной длины, а это бооольшущий плюс.
Кстати, 6 байт это utf8, который таки в среднем короче, но надо помнить, что один символ может кодироваться более чем одним символом (я про всякие тильды, точки над e и прочие сложные символы)
Но, если создается новый язык имеет смысл предусмотреть возможность работать с любой имеющейся кодировкой.

Majestio писал(а):
Но я вот выбрал такой способ изучения Форта. От меньшего к большему.

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

Majestio писал(а):
Да мне бы сперва хоть что-то сделать ))))

Форт, конечно, прост в реализации, но далеко не тривиален.
Начните с изучения исходников 8)
Потому что заявленные вами задачи (например, мульиплатформенность) ох как не просто разрешаются.

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



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

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
mOleg писал(а):
вообще, UTF16 тоже фигово, имхо, лучше UTF32.

Согласен. Напрочь упустил я кодировочки. Это первый стандарт UTF-16 был вроде двухбайтовый. Однако, имхо, наворотили не бог весть что. 65535 знакомест хватило бы, если бы не резервировали на редко-используемые иероглифы место. В японском базисе (что должен знать школьник после обучения в школе) - около 10 тыс. иероглифов. Берем примерно ту же цифру и для китайцев (японцы используют китайскую письменность, без учета хираганы и катаканы). Корейцам 12 тыс ... итого 22 тыс и 65 тыс. Ну и 43 тыс на прочие алфавиты. Я ни разу не лингвист, но похоже - многобайтовые кодировки "перекошены" просто в угоду обратной совместимости. В таком случае UTF-32, да, выход.

mOleg писал(а):
Но, если создается новый язык имеет смысл предусмотреть возможность работать с любой имеющейся кодировкой.

Это не вопрос. Вопрос - какую кодировку выбрать "родной".

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

Еще с кучерявых институтских времен привык любую сложную задачу подвергать декомпозиции. Даже работая в НИИ, продолжительное время участвовал в проекте по созданию АСУ, в идеологии которого именно это все было. Сложно менять привычку :)

mOleg писал(а):
Начните с изучения исходников 8)

Я периодически к ним обращаюсь. Но смотрю не как написано, а пытаюсь осознать для чего.

_________________
Мои программные ништякиhttps://majestio.info


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

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
ЗЫ: Кстати очень хочется в новом не-форт языке ввести стандартные операторы, написание которых из набора: ?????????? (первые три - явно претендуют на работу со стеком) :D ... что скажите, извращение? :D

_________________
Мои программные ништякиhttps://majestio.info


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

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
На клавиатуре нет таких кнопок.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вт май 28, 2013 10:43 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
VoidVolker писал(а):
Сто кнопок на клавиатуре мало, еще большее количество хоткеев, так давайте сделаем количество необходимых хоткеев еще большим, а также увеличим энтропию исходного текста


Несколько "отступлений":

1) Если я не путаю (поправьте) - словом в Форте может быть любая последовательность символов за исключением "пробела", который является разделителем слов;
2) Написать "x ?" подключив хоткеи быстрее, чем "x PUSH", к примеру - 4 нажатия клавиш в идеале, против 6, во втором примере.
3) Не могу представить себя в ипостаси китайца-программера, но они тоже как-то программируют и документируют.

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вт май 28, 2013 11:50 
Не в сети
Аватара пользователя

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
Majestio писал(а):
VoidVolker писал(а):
Сто кнопок на клавиатуре мало, еще большее количество хоткеев, так давайте сделаем количество необходимых хоткеев еще большим, а также увеличим энтропию исходного текста


Несколько "отступлений":

1) Если я не путаю (поправьте) - словом в Форте может быть любая последовательность символов за исключением "пробела", который является разделителем слов;
2) Написать "x ?" подключив хоткеи быстрее, чем "x PUSH", к примеру - 4 нажатия клавиш в идеале, против 6, во втором примере.
3) Не могу представить себя в ипостаси китайца-программера, но они тоже как-то программируют и документируют.

Т.е. 34 не буквенных символов - мало? Напомню, размер русского алфавита 33 символа. И мы все разговариваем на этом языке.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вт май 28, 2013 13:35 
Не в сети
Аватара пользователя

Зарегистрирован: Пт окт 15, 2010 14:29
Сообщения: 124
Благодарил (а): 68 раз.
Поблагодарили: 1 раз.
gudleifr писал(а):
Majestio писал(а):
"энтропия исходного текста" по идее должна приблизиться к нулю
А все человеческие языки избыточны не зря. Вот, читаете Вы чужую программу с иероглифами и постоянно думаете: "обычная" это стрелочка или "полуторной ширины", правильная закорючка или ошибка наборщика?

Текущий "стандарт" поможет.

VoidVolker писал(а):
Т.е. 34 не буквенных символов - мало? Напомню, размер русского алфавита 33 символа. И мы все разговариваем на этом языке.


А как же + - / ??? Нам так же приходится "разговаривать" используя это.
По поводу клавиатуры ... Не все так печально, держите шпаргалку:

Изображение

_________________
Мои программные ништякиhttps://majestio.info


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вт май 28, 2013 13:44 
Majestio писал(а):
Не все так печально, держите шпаргалку...

На многих ...буках numpad видели? Да еще который не надо было бы включать через Fn, блокируя кусок клавиатуры?

"Рекорд" принадлежит моему карманному HP. Там в раскладке необъяснимым образом отсутствует "&".


Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: набросок стандарта от mOleg
СообщениеДобавлено: Вт май 28, 2013 15:50 
Не в сети
Аватара пользователя

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
Majestio писал(а):
А как же + - / ??? Нам так же приходится "разговаривать" используя это.

Их я тоже посчитал.
Majestio писал(а):
По поводу клавиатуры ... Не все так печально, держите шпаргалку:

Изображение

Боян же. Кроме того, у меня даже есть код, использующий такой ввод символов.

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


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

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


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

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


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

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