vvs: Я знаю, что это идёт вразрез с некоторыми взглядами на простоту. Но просто для того, чтобы добавить дополнительное измерение к дискуссии. Возможный профессиональный взгляд со стороны на проблему парсерного интерфейса: [Meta Programming System](
https://www.jetbrains.com/mps/ "Meta Programming System") "The core problem of extending languages lies in the parsers, which analyze strings to build data structures. Parsers restrict the code-persistent representation to a single notation, which means they cannot be easily combined with other parsers, preventing language modularization. Implementing the non-textual presentation of program code is the alternative most commonly proposed to address this problem. A major benefit of this approach is that it eliminates the need for parsing. In MPS however, we propose another alternative. Our solution is to always have code maintained in what is known as an Abstract Syntax Tree (AST), a data structure that consists of nodes with a set of attributes (properties, children, and references) that fully describe the program code." Помнится подобное отношение стояло и за созданием QSP. Я ни к чему не призываю, а просто предлагаю оценить эту проблему с разных сторон.
Ссылка:
http://instead-games.ru/forum/index.php?p=/discussion/comment/13758/#Comment_13758