āļĢāļđāļāđāļāļāļĨāđāļēāļĄāđāļāđāļāļĢāļđāļāđāļāļāļāļēāļĢāļāļāļāđāļāļāđāļāļīāļāļāļĪāļāļīāļāļĢāļĢāļĄāļāļĩāđāđāļāđāļāļąāļāļāļĒāđāļēāļāđāļāļĢāđāļŦāļĨāļēāļĒāđāļāļāļāļāđāļāļāļāļāļāļŠāļāļēāļāļąāļāļĒāļāļĢāļĢāļĄāđāļĨāļ°āļĢāļđāļāđāļāļāļāļāļāļāđāđāļ§āļĢāđ āđāļāļĒāļĄāļļāđāļāđāļāđāļāđāļāļāļĩāđāļāļēāļĢāļāļąāļāļŦāļēāđāļāļĨāļđāļāļąāļāļāļĩāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļāļāļēāļĢāļāļĩāļāļ§āļēāļĄāđāļĨāļ°āļāļĢāļ°āđāļĄāļīāļāļ āļēāļĐāļēāđāļĨāļ°āļŠāļģāļāļ§āļāđāļāļāļēāļ°āđāļāđāļĄāļ (DSL) āļĢāļđāļāđāļāļāļāļĩāđāļāļģāļāļ§āļĒāļāļ§āļēāļĄāļŠāļ°āļāļ§āļāđāļāļāļēāļĢāđāļĒāļāļ§āļīāđāļāļĢāļēāļ°āļŦāđāđāļĨāļ°āļāļēāļĢāļāļĩāļāļ§āļēāļĄāļāļīāļāļŠāđāļāļāļāđāļāļāļāđāļ§āļĒāļēāļāļĢāļāđāļāļĩāđāļāļģāļŦāļāļāđāļ§āđāļāļĒāđāļēāļāļāļĩāđāļāļĒāļāļēāļĢāđāļŠāļāļāđāļāļĢāļāļŠāļĢāđāļēāļāđāļ§āļĒāļēāļāļĢāļāđāđāļāļĢāļđāļāđāļāļāļāļāļāļĨāļģāļāļąāļāļāļąāđāļāđāļāļīāļāļ§āļąāļāļāļļ āļĢāļ°āļāļāļĨāļģāļāļąāļāļāļąāđāļāļāļĩāđāļĄāļąāļāđāļĢāļĩāļĒāļāļ§āđāļē Abstract Syntax Tree (AST) āļŠāļĢāļļāļāļāļĢāļĢāļāļ°āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļĩāļāļ§āļēāļĄāļ āļēāļĐāļēāļāļīāļāļāļļāļāļŦāļĢāļ·āļāļāļīāļāļāļāđ
āļāļēāļĢāļāļĩāļāļ§āļēāļĄāļ āļēāļĐāļēāđāļāļāļēāļ°āđāļāđāļĄāļāđāļāđāļāļāđāļāļāļģāļŦāļāļāļāļąāđāļ§āđāļāđāļāļŠāļāļēāļāļąāļāļĒāļāļĢāļĢāļĄāļāļāļāļāđāđāļ§āļĢāđāđāļĨāļ°āđāļāļāļāļĨāļīāđāļāļāļąāļāļŠāļĄāļąāļĒāđāļŦāļĄāđ āđāļāļĒāđāļāļāļēāļ°āļāļĒāđāļēāļāļĒāļīāđāļāđāļĄāļ·āđāļāļāđāļāļāđāļĒāļāļ§āļīāđāļāļĢāļēāļ°āļŦāđāđāļĨāļ°āļāļĢāļ°āđāļĄāļīāļāļāļīāļāļāļāđāļāļķāđāļāđāļāđāļāļŠāđāļ§āļāļŦāļāļķāđāļāļāļāļāļāļēāļĢāđāļāđāļāļāļāļŦāļĢāļ·āļāļāļēāļĢāļāļģāļŦāļāļāļāđāļēāļāļāļāļāļđāđāđāļāđ āļĢāļđāļāđāļāļāļĨāđāļēāļĄāđāļĄāļ·āđāļāđāļāđāļāļĒāđāļēāļāļāļđāļāļāđāļāļāļāļ°āļŠāđāļāļāļĨāđāļŦāđāļāļēāļāđāļāđāļāļĄāļĩāļāļ§āļēāļĄāļĒāļ·āļāļŦāļĒāļļāđāļ āļāļģāļĢāļļāļāļĢāļąāļāļĐāļēāđāļāđ āđāļĨāļ°āļāļĒāļēāļĒāđāļāđāļāđāļēāļĒāļāļķāđāļāļāļāļāļŠāļāļāļāļāļ§āļēāļĄāļāđāļāļāļāļēāļĢāļāļĩāđ āđāļĢāļāļāļđāļāđāļāļŦāļĨāļąāļāđāļāļ·āđāļāļāļŦāļĨāļąāļāļāļēāļĢāđāļāđāļĢāļđāļāđāļāļāļĨāđāļēāļĄāļāļ·āļāļāļēāļĢāļāļģāļŦāļāļāđāļ§āļĒāļēāļāļĢāļāđāļŠāļģāļŦāļĢāļąāļāļ āļēāļĐāļēāļāļĩāđāļāļģāļŦāļāļāđāļĨāļ°āļāļģāđāļŠāļāļāđāļāļĢāļđāļāđāļāļāļāļĩāđāļĄāļĩāđāļāļĢāļāļŠāļĢāđāļēāļāļāļķāđāļāļĄāļĩāļāļąāđāļāļāļĢāļīāļāļāđāļĨāļ°āļāļĢāļąāļāļāļāļēāļāđāļāđ
āđāļāļāļĢāļīāļāļāļāļāļāđāļāļĨāļāļāļāļĢāđāļĄ AppMasterno-code āļāļēāļĢāđāļāđ Interpreter Pattern āļĄāļĩāļāļ§āļēāļĄāļŠāļģāļāļąāļāļāļĒāđāļēāļāļĒāļīāđāļāļāđāļāļāļēāļĢāļāļąāļāļāļēāđāļĨāļ°āļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļāļāļĩāđāļĢāļēāļāļĢāļ·āđāļ āđāļāļĨāļāļāļāļĢāđāļĄāļāļąāļāļāļĨāđāļēāļ§āļāđāļ§āļĒāđāļŦāđāļāļđāđāđāļāđāļŠāļēāļĄāļēāļĢāļāļāļāļāđāļāļ āļāļąāļāļāļē āđāļĨāļ°āļāļĢāļąāļāđāļāđāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļĨāļąāļāļĐāļāļ°āļāļĩāđāļĄāļāļāđāļŦāđāļāđāļāđāđāļāļĒāđāļĄāđāļāđāļāļāđāļāđāđāļāđāļ āļāļķāđāļāđāļāļĒāļāļĢāļĢāļĄāļāļēāļāļīāđāļĨāđāļ§āļāļ°āđāļāļĩāđāļĒāļ§āļāđāļāļāļāļąāļāļāļēāļĢāļŠāļĢāđāļēāļāđāļĨāļ°āļāļēāļĢāļāļĩāļāļ§āļēāļĄāļ āļēāļĐāļēāđāļĨāļ°āļŠāļģāļāļ§āļāļāđāļēāļāđ āļāļąāļ§āļāļĒāđāļēāļāđāļāđāļ āļāļēāļĢāļāļģāļŦāļāļāđāļĄāđāļāļĨāļāđāļāļĄāļđāļĨ āļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļēāļāļāļļāļĢāļāļīāļ āđāļĨāļ°āļŠāđāļ§āļāļāļĢāļ°āļāļāļāļāļīāļāđāļāļāļĢāđāđāļāļāļāļđāđāđāļāđāđāļāļĨāļąāļāļĐāļāļ°āļāļĩāđāđāļāđāļāļ āļēāļ āđāļāļĨāđāļāđāļāļāļēāļĢāļŠāļĢāđāļēāļāļ āļēāļĐāļēāđāļāļāļēāļ°āđāļāđāļĄāļāļāļ·āđāļāļāļēāļāļāļĩāđāđāļŠāļāļāļāļķāļāđāļāļāļāļīāļāļĩāđāļŦāļĨāđāļēāļāļĩāđāđāļāđāļāļĩāļāļĩāđāļŠāļļāļ āļĢāļđāļāđāļāļāļĨāđāļēāļĄāđāļāđāļāļāļļāļāđāļāļŠāļģāļāļąāļāđāļāļāļēāļĢāļāļĩāļāļ§āļēāļĄāđāļĨāļ°āļāļĢāļ°āđāļĄāļīāļāļ āļēāļĐāļēāļāļąāļāļāļĨāđāļēāļ§āļāļĒāđāļēāļāđāļĄāđāļāļĒāļģ āļāđāļ§āļĒāđāļŦāđāđāļāļĨāļāļāļāļĢāđāļĄāļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāđāļĨāļ°āļāļĢāļąāļāđāļāđāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļāļĒāđāļēāļāđāļĄāđāļāļĒāļģāđāļĨāļ°āļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
āđāļāļ·āđāļāļāļģāļāļ§āļēāļĄāđāļāđāļēāđāļāļāļēāļĢāļāļģāļāļēāļāļāļāļāļĢāļđāļāđāļāļāļĨāđāļēāļĄ āļāļģāđāļāđāļāļāđāļāļāļāļģāļāļ§āļēāļĄāļāļļāđāļāđāļāļĒāļāļąāļāļāļāļāđāļāļĢāļ°āļāļāļāļŦāļĨāļąāļāļŠāļĩāđāļāļĢāļ°āļāļēāļĢ āđāļāđāđāļāđ:
- AbstractExpression: āļāļīāļāđāļāļāļĢāđāđāļāļāļŦāļĢāļ·āļāļāļĨāļēāļŠāļāļēāļĄāļāļĢāļĢāļĄāļāļĩāđāđāļŠāļāļāļāļķāļāļāļīāļāļāļāđāļāļąāđāļ§āđāļāļāļĩāđāļāļģāļŦāļāļāļ āļēāļĐāļē āļĄāļąāļāļāļģāļŦāļāļāļ§āļīāļāļĩāļāļēāļĢāļāļĩāđāđāļĢāļĩāļĒāļāļ§āđāļē 'āļāļĩāļāļ§āļēāļĄ ()' āļāļĩāđāļāļīāļāļāļāđāļāļĩāđāđāļāđāļāļĢāļđāļāļāļĢāļĢāļĄāļāļąāđāļāļŦāļĄāļāļāļ§āļĢāđāļāđ
- TerminalExpression: āđāļāļ·āđāļāļāļāļēāļāđāļāđāļāļāļĨāļēāļŠāļĒāđāļāļĒāļāļāļ AbstractExpression TerminalExpression āļāļķāļāđāļāļ·āđāļāļĄāđāļĒāļāļāļąāļāļŠāļąāļāļĨāļąāļāļĐāļāđāđāļāļāļĢāđāļĄāļīāļāļąāļĨāļŦāļĢāļ·āļāđāļāđāļāđāļāđāļāđāļ§āļĒāļēāļāļĢāļāđāļāļĩāđāļāļģāļŦāļāļ āđāļāđāļāļŦāļāđāļ§āļĒāļāļĩāđāđāļĨāđāļāļāļĩāđāļŠāļļāļāđāļĨāļ°āđāļāđāļāđāļĒāļāđāļĄāđāđāļāđāđāļāļ āļēāļĐāļē
- NonTerminalExpression: āļāļĨāļēāļŠāļĒāđāļāļĒāļāļāļ AbstractExpression āļāļĩāđāđāļāļĩāđāļĒāļ§āļāđāļāļāļāļąāļāļŠāļąāļāļĨāļąāļāļĐāļāđāļāļĩāđāđāļĄāđāđāļāđāđāļāļāļĢāđāļĄāļīāļāļąāļĨ āļāļķāđāļāđāļāđāļāļāļīāļāļāļāđāļāļŠāļĄāļāļĩāđāļŦāđāļāļŦāļļāđāļĄāļāļāđāļĨāļ°āļāđāļāļāļĄāļĩāļāļēāļĢāļāļĩāļāļ§āļēāļĄāđāļāļīāđāļĄāđāļāļīāļĄ āļāļ°āļāļģāļŦāļāļāļ§āļīāļāļĩāļāļēāļĢāļĢāļ§āļĄāļāļīāļāļāļāđāđāļāļāļĢāđāļĄāļīāļāļąāļĨāđāļĨāļ°āļāļĩāđāđāļĄāđāđāļāđāđāļāļāļĢāđāļĄāļīāļāļąāļĨāđāļĨāļ°āļŠāļąāļĄāļāļąāļāļāđāļāļąāļ
- āļāļĢāļīāļāļ: āļāļĨāļēāļŠāļāļĢāļīāļāļāļĄāļĩāļāļ§āļēāļĄāļŠāļģāļāļąāļāļāļĒāđāļēāļāļĒāļīāđāļāđāļāļāļēāļĢāđāļŦāđāļāđāļāļĄāļđāļĨāđāļāļīāđāļĄāđāļāļīāļĄāļāļĩāđāļāļģāđāļāđāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļĩāļāļ§āļēāļĄāļāļīāļāļāļāđ āļāļĢāļ°āļāļāļāļāđāļ§āļĒāļāļēāļĢāļāđāļēāļāļāļīāļāļāļķāļāļŠāļāļēāļāļ°āļŠāļēāļāļĨ āļāļķāđāļāđāļāđāļĢāđāļ§āļĄāļāļąāļāļĢāļ°āļŦāļ§āđāļēāļāļŠāļģāļāļ§āļāļāļąāđāļāļŦāļĄāļāđāļāļĢāļ°āļŦāļ§āđāļēāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļĩāļāļ§āļēāļĄ
āđāļĄāļ·āđāļāđāļāđāļĢāļđāļāđāļāļāļĨāđāļēāļĄ āđāļāđāļēāļŦāļĄāļēāļĒāļŦāļĨāļąāļāļāļ·āļāļāļēāļĢāļŠāļĢāđāļēāļāđāļāļāļāļąāļāļāļēāļĢāđāļĒāļāļ§āļīāđāļāļĢāļēāļ°āļŦāđ (AST) āļāļĩāđāđāļŠāļāļāļāļķāļāļ āļēāļĐāļēāļŦāļĢāļ·āļāļāļīāļāļāļāđāļāļĩāđāļāđāļāļ āđāļāļāļāļąāļāļāļĩāđāļāļĢāļ°āļāļāļāļāđāļ§āļĒāļāļīāļāļāļāđāđāļāļāļĢāđāļĄāļīāļāļąāļĨāđāļĨāļ°āļāļīāļāļāļāđāļāļĩāđāđāļĄāđāđāļāđāđāļāļāļĢāđāļĄāļīāļāļąāļĨ āļāļķāđāļāļāļąāđāļāļŦāļĄāļāļŠāļ·āļāļāļāļāļĄāļēāļāļēāļ AbstractExpression āļāļēāļĢāļāļĩāļāļ§āļēāļĄāđāļĢāļīāđāļĄāļāđāļāļāļēāļāļĢāļēāļāļāļāļāļāđāļāđāļĄāđāđāļĨāļ°āļāļģāđāļāļīāļāļāļēāļĢāļāđāļāđāļāļĒāļāļēāļĢāđāļāļĨāļ·āđāļāļāļāļĩāđāļāđāļēāļāļāđāļāđāļĄāđāđāļāļāļ§āļāļāđāļģāđāļāļĒāđāļāđāđāļĄāļāļāļ āļāļĩāļāļ§āļēāļĄ () āļāļĨāļēāļŠāļāļĢāļīāļāļāļāđāļ§āļĒāđāļāļāļēāļĢāļĢāļąāļāļĐāļēāļŠāļāļēāļāļ°āļĢāļ°āļāļąāļāđāļĨāļāđāļĨāļ°āļāļēāļĢāđāļŦāđāļāđāļāļĄāļđāļĨāđāļŠāļĢāļīāļĄāļāļĩāđāļāļģāđāļāđāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļĩāļāļ§āļēāļĄāļāļĩāđāļāļđāļāļāđāļāļ
āļāļąāļ§āļāļĒāđāļēāļāđāļāļāļĩāļ§āļīāļāļāļĢāļīāļāļāļāļāļĢāļđāļāđāļāļāļĨāđāļēāļĄāļŠāļēāļĄāļēāļĢāļāļŠāļąāļāđāļāļāđāļāđāđāļāļāļēāļĢāđāļāđāļāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļĢāļ·āđāļāļāļāļīāļāđāļĨāļ āđāļāļŠāļāļēāļāļāļēāļĢāļāđāļŠāļĄāļĄāļāļīāļāļĩāđ āļāļīāļāļāļāđāļāļĩāļāļāļāļīāļāļŠāļēāļĄāļēāļĢāļāđāļŠāļāļāļāđāļ§āļĒāđāļ§āļĒāļēāļāļĢāļāđāļāļĩāđāļāļĢāļ°āļāļāļāļāđāļ§āļĒāļŠāđāļ§āļāļāļĢāļ°āļāļāļāļāđāļēāļāđ āđāļāđāļ āļāļąāļ§āđāļĨāļ āļāļąāļ§āļāļģāđāļāļīāļāļāļēāļĢ āđāļĨāļ°āļ§āļāđāļĨāđāļ āļĢāļđāļāđāļāļāļĨāđāļēāļĄāļŠāļēāļĄāļēāļĢāļāļāļģāļĄāļēāđāļāđāđāļāļ·āđāļāļŠāļĢāđāļēāļ AST āļāļĩāđāļĄāļĩāļāļļāļāļĨāļąāļāļĐāļāļ° TerminalExpressions āļŠāļģāļŦāļĢāļąāļāļāļąāļ§āđāļĨāļ āđāļĨāļ° NonTerminalExpressions āļāđāļēāļāđ āļŠāļģāļŦāļĢāļąāļāļāļąāļ§āļāļģāđāļāļīāļāļāļēāļĢāļāļēāļāļāļāļīāļāļĻāļēāļŠāļāļĢāđ āđāļāđāļ āļāļēāļĢāļāļ§āļ āļāļēāļĢāļĨāļ āđāļĨāļ°āļāļēāļĢāļāļđāļ āļĢāļđāļāđāļāļāļāļĩāđāļāđāļ§āļĒāļāļāļāļĢāļŦāļąāļŠāļāļīāļāļāļāđāļāļĩāļāļāļāļīāļāļāļĩāđāđāļŦāđāļĄāļēāđāļĨāļ°āļāļģāļāļ§āļāļāļĨāļĨāļąāļāļāđāļāļēāļĄāļāļąāđāļ
āđāļāļĒāļŠāļĢāļļāļ āļĢāļđāļāđāļāļāļĨāđāļēāļĄāđāļāđāļāļĢāļđāļāđāļāļāļāļēāļĢāļāļāļāđāļāļāļāļĩāđāļāļĢāļāļāļĨāļąāļāđāļĨāļ°āļĒāļ·āļāļŦāļĒāļļāđāļ āļāļķāđāļāļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāđāļāļĨāļ āļēāļĐāļēāđāļĨāļ°āļŠāļģāļāļ§āļāđāļāļāļēāļ°āđāļāđāļĄāļāđāļāđāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļĨāļ°āđāļāđāļāļĢāļ°āđāļāļĩāļĒāļ āļāđāļ§āļĒāđāļŦāđāļāļąāļāļāļąāļāļāļēāļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāđāļ§āļĒāļēāļāļĢāļāđāļāļĩāđāļāļąāļāđāļāļāļŠāļģāļŦāļĢāļąāļāļ āļēāļĐāļē āļāļķāđāļāļāļēāļāļāļąāđāļāļāļ°āđāļŠāļāļāļāđāļ§āļĒāļĨāļģāļāļąāļāļāļąāđāļāđāļāļīāļāļ§āļąāļāļāļļ āļāđāļ§āļĒāļāļēāļĢāļāļģāđāļŠāļāļāđāļāļĨāļđāļāļąāļāđāļāļāđāļĄāļāļđāļĨāļēāļĢāđāđāļĨāļ°āļāļĒāļēāļĒāđāļāđāļāđāļēāļĒ āļĢāļđāļāđāļāļāļāļĩāđāļāļķāļāļĄāļĩāļāļļāļāļāđāļēāļāļĒāđāļēāļāđāļŦāļĨāļ·āļāđāļāļ·āđāļāđāļāļāļĢāļīāļāļāļāļāļāļŠāļāļēāļāļąāļāļĒāļāļĢāļĢāļĄāļāļāļāļāđāđāļ§āļĢāđāļŠāļĄāļąāļĒāđāļŦāļĄāđāđāļĨāļ°āđāļāļĨāļāļāļāļĢāđāļĄ āđāļāđāļ AppMaster āļāļķāđāļāļāļēāļĢāļāļĩāļāļ§āļēāļĄāļ āļēāļĐāļēāļāļĩāđāļŦāļĨāļēāļāļŦāļĨāļēāļĒāđāļāđāļāļāļąāļāļāđāļāļąāļāļŦāļĨāļąāļāļāļĩāđāļāđāļ§āļĒāđāļŦāđāļāļēāļĢāļāļąāļāļāļēāđāļāļāļāļĨāļīāđāļāļāļąāļāļĢāļ§āļāđāļĢāđāļ§ āđāļĄāđāļāļĒāļģ āđāļĨāļ°āļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ