quote и о её необходимости

Ещё одна функция, которую считают классической для Лисп - “кавычки” или “цитата”. Кстати, в PicoLisp одинарная кавычка - алиас или синоним, но не включен в документации отдельной статьей, распознается интерпретатором как макрос для этой функции. quote - “ничего не делает“, а просто возвращает все что в скобках “как есть“, не вычисляет, то есть никак не обрабатывает или точнее обрабатывает, просто отражая.
Как уже отмечалось, в синтаксисе или грамматике для лингвистических компьютерных интерфейсов, так или иначе, используются для лексем префиксы и суффиксы, а для их последовательностей - скобки. При чем, часто кавычки используются как вид скобок. То есть скобки у нас разные и в PicoLispe помимо круглых используются и квадратные , и фигурные, а есть ещё теги гипертекста …
Для оптимизации логики здесь для PicoLisp ещё есть простор, где наведя порядок можно стать и синтаксическим стандартом для систем, где данные - это код, а код - это данные. Не призывая полностью реализовывать формат ASON, но некоторые его аспекты можно было бы учеть и кроме того, более системную спецификацию символов с помощью суффиксов и префиксов.
Что, например. Круглые скобки для вычисляемых блоков или контейнеров. Тогда “quote“ будет не нужна, как и дополнительные кавычки. То есть все эти синтаксические конструкции просто говорят интерпретатору каким обработчиком этот символ или выражение, как их последовательность, обрабатывать. Квадратные скобки как глобальные - это уже кажется почти общая конвенция, ну а заключать ли объекты в фигурные скобки, можно ещё подумать.
Кстати, о префиксах и суффиксах. Двоеточия для “set” и “get” снижают ментальную нагрузки при чтении кода и уже стало почти для всех привычным использовать “точку” для доступа к атрибутам объекта, слеш для путей к файлам и так далее … К этой теме я буду возвращаться ещё не раз, в каждом удобном контексте. Не умоляя достоинств супер-архитектуры виртуальной машины PicoLisp, в части синтаксиса ещё есть где оптимизировать систему с целью юзабилити и продвижения в массы. И, кстати, на фоне детального описания архитектуры, нигде не бросается прямо в глаза описание парсинга. Скорее всего это как-то неявно присутствует в описаниях VIP, который по утверждения автора не IDE, но описание в этой части, недостаточно, особенно для новичков в программировании и, в частности, в POSIX-синтаксических системах.
Subscribe to my newsletter
Read articles from Sergey Shishkin directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Sergey Shishkin
Sergey Shishkin
Всегда чему-то учусь!