瀏覽代碼

Create 2015-10-12-Первый-прототип.md

Пётр 9 年之前
父節點
當前提交
88658c1714
共有 1 個文件被更改,包括 25 次插入0 次删除
  1. 25 0
      _posts/2015-10-12-Первый-прототип.md

+ 25 - 0
_posts/2015-10-12-Первый-прототип.md

@@ -0,0 +1,25 @@
+---
+published: true
+layout: post
+---
+
+Первый прототип языка, парсера и объектной модели готов, подробности в [вики](https://github.com/kpmy/ot/wiki). 
+По результату тестов можно отметить, что неявная квалификация даже в контексте текстовых человекочитаемых шаблонов есть фича неоднозначная. 
+
+В остальном всё довольно просто прошло, парсер -> объектная модель -> контекст. Даже немного боязно, не упустил ли чего за кажущейся простотой. 
+Сомнения вызывает точка, как разделитель в квалификаторе, она не позволяет использовать точку, как часть идентификатора, хотя в роли квалификатора точка довольно органично смотрится. 
+Сегодняшний формат выглядит примерно так:
+
+    module.class(id): content;
+
+Куча вариантов было отброшено:
+
+    module>class(id)
+    [module]class(id)
+    module:class(id)
+
+В последнем варианте двоеточие смотрится неплохо, как в xml namespace, но это сразу убивает возможность использования двоеточия, как негромоздкого символа, открывающего содержимое объекта.
+
+Конечно, пока никаких языков программирования встроить не требовалось, да и задача постепенно усложняется, так как встраивание требует модификации парсера, что может серьёзно повредить его, простой как сапог, сути. 
+Возможно, встраивание ЯП должно выглядеть иначе, чем задумывалось в посте с рассуждениями.
+