- Убожество коммандеров затрудняет динамическую генерацию кода. То, что коммандеры - это только функции с простыми сигнатурами, но не лямбды и не модули, заставляет вносить весь код в модули и хранить их в виде файлов. Поэтому программы на ББЦБ легче подвержены статическому анализу, чем программы, где динамическая лямбда лямбдой погоняет.
- Простая структура пространства имён делает однозначным то, что «слово» - это имя модуля, а «слово.слово» - это имя объекта в модуле. Если бы пр-во имён было иерархическим, такой однозначности бы не было. Внутри исходника это уже не работает, но зато оно работает в документации - это уже достаточно хорошо.
- ЗАЧЕРКНУТЬ: ключевые слова капслоком позволяют добавлять новые ключевые слова - конфликт с пользовательскими идентификаторами абсолютно исключён. Правда, я думаю, что цена этой безконфликтности слишком велика и платить её не нужно. Проще сделать правило, которое будет переименовывать пользовательские слова при возникновении такого конфликта. Программа сломается, конечно, но никто не сказал, что развитие языка ничего не стоит.
На самом деле там могут быть имена пользовательских сущностей капслоком, т.е. это просто такой, с позволения сказать, «стиль». - В России применяется в энергетике (калининградский энергетический узел, Ростовская АЭС), в науке ИЯИ РАН, СФУ, в БПЛА (не в критичных местах) - Новик-XXI век, с/х (Мираторг)
Неожиданные достоинства ББЦБ
Неожиданные достоинства ББЦБ
#blackboxcomponentbuilder #новыйкомпонентныйпаскаль