Уважаемый Рэйлвэй Каген!
1. Все декларации глобальные.
2. Распределение памяти автоматическое
3. В языке ГРАФИТ-ФЛОКС 35 типов деклараций
4. В пп. 2, 3, 4 на с. 41 для примера указана часть сведений, относящихся к типу КС (Команда Силовая)
5. Ваше выражение «описание на Флокс'е - несколько больше, чем ассемблерный инклюд, но ещё не сишный хидер» я понял (возможно, ошибочно), что Флокс выше ассемблера, но ниже Си. Если я понял правильно, то мой ответ таков:
6. В рамках когнитивно-эргономического подхода (как я его понимаю) старинная классификация «язык низкого уровня», «язык высокого уровня» полностью теряет смысл.
Взамен нее (применительно к языку Графит-Флокс) я ввожу КОЛИЧЕСТВЕННЫЙ критерий понятности алгоритмов и деклараций для пользователей языка.
7. Что это за критерий? Дам ответ не в общем виде, а проведу расчет на конкретном примере. См. «Реальный алгоритм на языке ГРАФИТ» на стр. 40 Извлечения.
Но сначала дам пояснение.
8. Вопрос. Какие символы в этом алгоритме НЕ ЗНАКОМЫ начинающим пользователям языка (то есть комплексникам и прибористам, которые впервые в своей жизни начинают знакомиться с технологией графит-флокс)?
Ответ. Не знакомыми символами являются АП (Алгоритм Процедура), ПЛ (Признак Логический) и знак присваивания :=
Вопрос. Почему?
Ответ. Потому что эти символы обозначают чуждые для них понятия из области программирования.
Все остальные символы для них знакомы (так как они обозначают родные им понятия).
Конец пояснения9. Расчет производится так:
• подсчитать общее количество символов в алгоритме на стр. 40 Извлечения. (Знак присваивания считаем за один символ).
Результат 103 символа;• разбить все символы на знакомые и не знакомые;
• отдельно подсчитать количество знакомых и незнакомых символов.
Результат 95 знакомых символов и только 8 незнакомых символов.• дать ответ в процентах.
Окончательный результат расчета. В данном алгоритме 92,3% символов обозначают знакомые понятия.
И лишь 7,7% символов обозначают незнакомые (для начинающих) понятия. Для сравнения: в традиционных языках программирования почти все символы обозначают НЕ ЗНАКОМЫЕ прибористам и комплексникам понятия.
Согласно моему количественному критерию число "незнакомцев" в традиционных языках приближается к 100%. В итоге традиционные программы превращаются в ребус. Никто, кроме программистов, не может их понять.
Еще один пример применения моего количественного критерия см. книгу "Как улучшить работу ума...", стр. 197-199.
10. Академик Андрей Ершов сказал:
Цитата:
Язык программирования кодирует объекты предметной области задачи, а наше знание об этих объектах остается за пределами программного текста.
11. Я считаю, что это ВАЖНЫЙ недостаток традиционных языков.
Система графит-флокс ориентирована на преодоление этого недостатка.
И в какой-то мере это удалось.
12. Дам еще одно пояснение.
Для этого приведу пример. На стр. 41 указан идентификатор силовой команды
КС1УФ.ОТКЛЮЧИТЬ.ФИДЕР.УМ1
13. На какой объект указывает этот идентификатор?
На этот вопрос следует дать два принципиально разных ответа.
14. С точки зрения прибористов и комплексников этот идентификатор указывает на объект, НАХОДЯЩИЙСЯ ВНЕ КОМПЬЮТЕРА. А именно на команду, которая выскакивает из бортового компьютера Бисер, бежит по проволоке через прибор «устройство обмена» и в конечном итоге попадает в прибор «силовой коммутатор».
Результатом выдачи этой команды является тот факт, что прибор «силовой коммутатор» образует нужный силовой фидер (то есть нужную шину электропитания).
Зачем комплексник выдает эту команду? Чтобы образовать нужный ему фидер питания.
15. С точки зрения программиста дело обстоит совершенно по другому. Программист отлично понимает, что идентификатор указывает на какие-то объекты, находящиеся в оперативной памяти Бисера.
Какие же это объекты?
Ответ не прост.
Чтобы образовать фидер, надо выдать из компьютера не одну команду, а серию посылок по определенной циклограмме.
Эта операция достигается путем сложного взаимодействия программ центрального процессора и программ процессора ввода-вывода (канала ввода-вывода).
Из рисунка на стр. 41 Извлечения следует, что Бисер имеет 8 процессоров ввода-вывода.
16.
Вывод 1. Языки Графит и Флокс должны обеспечить работу в той системе понятий, которая является «родной» для комплексников и прибористов». Я утверждаю: флокс-идентификаторы им понятны, они для них «родные». Пример такого идентификатора
КС1УФ.ОТКЛЮЧИТЬ.ФИДЕР.УМ1
17.
Вывод 2. Комплексник указывает Выдать команду КС1УФ.ОТКЛЮЧИТЬ.ФИДЕР.УМ1
Это простое указание автоматически порождает сложнейшее взаимодействие программ центрального процессора и канальных программ (программ процессора ввода вывода).
18.
Вывод 3. Традиционные языки НЕ ПРИГОДНЫ для работы в той системе понятий, которая является «родной» для комплексников и прибористов.
Этот момент следует обязательно учитывать при сравнении с языками ассемблер, си и т.д.