Forth
http://fforum.winglion.ru/

три уровня языка
http://fforum.winglion.ru/viewtopic.php?f=36&t=1790
Страница 1 из 2

Автор:  mOleg [ Пн дек 22, 2008 13:47 ]
Заголовок сообщения:  три уровня языка

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

1 уровень - ФВМ - виртуальная машина
1a - минимально необходимый набор примитивов (смотрим форт-процессоры, eForth, другие маленькие системы)
1b - рекомендованные для удобной работы слова ФВМ
?1c - возможно имеет смысл сюда отнести слова для интерфейса с ОС, а так же работы с аппаратурой специфичные для платформы.

2 уровень транслятора
2a - слова для разбора текста, компилятор, обязательные структуры управления потоком программы, обработк ошибок
2b - словари, поддержка исключений, ???

3 уровень вспомогательных слов
3a - коментарии, управление потоком трансляции ( [IF] и подобные ), работа с файлами и другие системно зависимые вещи
3b - слова для работы с хипом, плавающая арифметика и т.п

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

Автор:  VoidVolker [ Пн дек 22, 2008 15:14 ]
Заголовок сообщения: 

А разве в теме http://fforum.winglion.ru/viewtopic.php?t=1779 не предложена структура?

Автор:  mOleg [ Пн дек 22, 2008 16:21 ]
Заголовок сообщения: 

VoidVolker писал(а):
А разве в теме http://fforum.winglion.ru/viewtopic.php?t=1779 не предложена структура?

а разве под ней все подписались?
я высказал свое мнение, в указанной вами теме мнение другое.

Автор:  WingLion [ Пн дек 22, 2008 18:40 ]
Заголовок сообщения: 

С точки зрения моего предложения, можно сказать, что:

1+1a+1b+?1c = (Минимальное Ядро Форта) - совсем не обязательно включающее в себя все уровни,
может быть, наример, в неком защищенном режиме уровень 1 вообще недоступен.

2,2a,2b,3,3a,3b,4,5,6,... - модули расширения, которые, я думаю, не следует пихать в стандарт на-все-все-все-случаи-жизни
Каждый модуль - это отдельно разработанный "стандартный модуль" со своим "стандартом" (например, F83 или ANSY94).

Автор:  Hishnik [ Пн дек 22, 2008 20:19 ]
Заголовок сообщения: 

Не совсем понятно разбиение на уровни.

Автор:  вопрос [ Пн дек 22, 2008 21:30 ]
Заголовок сообщения: 

Это mOleg хочет, чтобы всё было и никто ничего в стандарте не забыл

Автор:  mOleg [ Вт дек 23, 2008 16:53 ]
Заголовок сообщения: 

WingLion писал(а):
С точки зрения моего предложения, можно сказать, что
1+1a+1b+?1c = (Минимальное Ядро Форта) - совсем не обязательно включающее в себя все уровни,
может быть, наример, в неком защищенном режиме уровень 1 вообще недоступен.

первый уровень - это еще не форт, а только ФВМ!
То есть определенный набор команд, который позволит возвести остальные уровни.
Ну, к примеру можно взять любой форт-процессор - языка там еще нет, но (в данном случае реальная, железная) вычислительная машина имеется.
И защита тут ну вообще никаким боком не играет роли.

WingLion писал(а):
2,2a,2b,3,3a,3b,4,5,6,... - модули расширения, которые, я думаю, не следует пихать в стандарт на-все-все-все-случаи-жизни
Каждый модуль - это отдельно разработанный "стандартный модуль" со своим "стандартом" (например, F83 или ANSY94).

у меня такое ощущение, что вы невнимательно читали мой пост.
Речь не идет о модулях и дополнительных, не нужных в ядре вещах!
Второй уровень языка это ядро языка, которое может работать в стандартном режиме компиляции\интерпретации. То есть это уже языковая среда, по крайней мере, если вести речь о 2a. Остальное не является обязательным!
То есть в моем видении минимальный форт-компилятор будет состоять из 1a 2a. Но с этого ядра должна быть возможность раскрутить остальные уровни, за исключением, возможно уровней 1b 1c так как это "железные вопросы".

Хищник писал(а):
Не совсем понятно разбиение на уровни.

ну, а чего сложного?
1 - уровень железа или виртуальной машины. То есть речь о командах процессора или их эмуляции. То есть 1 уровень - это еще не язык Форт.
2 - уровень языка с минимальными наворотами - есть только средства позволяющие раскрутиться
3 - всяческие излишества, без которых в принципе можно обходиться, но не очень удобно.

Автор:  mOleg [ Вт дек 23, 2008 16:56 ]
Заголовок сообщения: 

вопрос писал(а):
Это mOleg хочет, чтобы всё было и никто ничего в стандарте не забыл

mOleg хочет, чтобы стандарт был понятный, удобный, легко читаемый и понимаемый.

кстати, еще:

стандарт не должен фиксировать реализацию каких бы то ни было слов системы, например, при описании [IF] [ELSE] [THEN] структур, не стоило приводить код, а стоило описать лишь интерфейс, а так же поведение в стандартных и нестандартных ситуациях.

стандарт должен описывать набор слов, поведение слов, стековые диаграммы. При этом не должен фиксировать реализацию чего бы то ни было, кроме интерфейса.

Автор:  WingLion [ Вт дек 23, 2008 17:20 ]
Заголовок сообщения: 

mOleg писал(а):
у меня такое ощущение, что вы невнимательно читали мой пост.


Я всего лишь попытался совместить свое видение стандарта с предложенным здесь.

Автор:  Гость [ Вт дек 23, 2008 19:09 ]
Заголовок сообщения: 

Цитата:
не должен фиксировать реализацию чего бы то ни было, кроме интерфейса
смысл "reference implementation" ("sample implementation") в пояснении, а не в фиксировании. Позор! ;)

Автор:  Hishnik [ Вт дек 23, 2008 19:09 ]
Заголовок сообщения: 

mOleg писал(а):
ну, а чего сложного?
1 - уровень железа или виртуальной машины. То есть речь о командах процессора или их эмуляции. То есть 1 уровень - это еще не язык Форт.
2 - уровень языка с минимальными наворотами - есть только средства позволяющие раскрутиться
3 - всяческие излишества, без которых в принципе можно обходиться, но не очень удобно.

Ну вобщем... не смотрится оно. Тут не вполне такая уж линейная зависимость с нарастанием сложности.

Автор:  вопрос [ Вт дек 23, 2008 20:40 ]
Заголовок сообщения: 

Цитата:
Ну вобщем... не смотрится оно. Тут не вполне такая уж линейная зависимость с нарастанием сложности.
Каждый может предложить своё

Автор:  mOleg [ Ср дек 24, 2008 00:20 ]
Заголовок сообщения: 

Хищник писал(а):
Ну вобщем... не смотрится оно. Тут не вполне такая уж линейная зависимость с нарастанием сложности

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

Автор:  mOleg [ Чт дек 25, 2008 22:14 ]
Заголовок сообщения: 

У меня создается впечатление, что на форуме в некоторых разделах необходима "агрессивная модерация".
вот, как последние посты относятся к заявленной теме топика?

Автор:  WingLion [ Чт дек 25, 2008 22:18 ]
Заголовок сообщения: 

злостно отмодерировно! Лишнее перемещено сюда!

Страница 1 из 2 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/