# FEATURES A master list of the features for our new modeling language: - [ ] documentation - [ ] overview - [ ] who - [ ] what - [ ] why - [ ] easy example - [ ] the language - [ ] spaces and comments - [ ] patterns - [ ] sequences - [ ] alternations - [ ] groups - [ ] quantifiers - [ ] behaviors - [ ] system - [ ] behavior - [ ] interactions - [ ] system item selectors - [ ] `sys1` - [ ] `sys1:pattern` - [ ] `sys1:a -> sys2:b` (ordering) - [ ] `sys1:a -> sys2:b -> sys3:b` (chained ordering) - [ ] `sys1:a == sys2:b` (joining) - [ ] `expr -> sys1:a` (conditionals) - [ ] triggers - [ ] `WHEN pattern { ... }` - [ ] `WHEN expr { ... }` - [ ] expressions and code blocks - [ ] properties - [ ] global scope - [ ] pattern scope - [ ] local scope - [ ] predefined variables - [ ] `global` - [ ] `this` - [ ] `parent` - [ ] `previous` - [ ] parser API - [ ] generator API - [ ] code parser - [ ] spaces and comments - [ ] error handling - [ ] patterns - [ ] sequences - [ ] alternations - [ ] groups - [ ] quantifiers - [ ] behaviors - [ ] system - [ ] behavior - [ ] interactions - [ ] system item selectors - [ ] `sys1` - [ ] `sys1:pattern` - [ ] `sys1:a -> sys2:b` (ordering) - [ ] `sys1:a -> sys2:b -> sys3:b` (chained ordering) - [ ] `sys1:a == sys2:b` (joining) - [ ] `expr -> sys1:a` (conditionals) - [ ] triggers - [ ] `WHEN pattern { ... }` - [ ] `WHEN expr { ... }` - [ ] expressions and code blocks - [ ] properties - [ ] global scope - [ ] pattern scope - [ ] local scope - [ ] special functions - [ ] `COUNT(pattern)` - [ ] special variables - [ ] `global` - [ ] `this` - [ ] `parent` - [ ] `previous` - [ ] includes - [ ] event trace generator - [ ] patterns - [ ] sequences - [ ] alternations - [ ] groups - [ ] quantifiers - [ ] behaviors - [ ] system - [ ] behavior - [ ] interactions - [ ] system item selectors - [ ] `sys1` - [ ] `sys1:pattern` - [ ] `sys1:a -> sys2:b` (ordering) - [ ] `sys1:a -> sys2:b -> sys3:b` (chained ordering) - [ ] `sys1:a == sys2:b` (joining) - [ ] `expr -> sys1:a` (conditionals) - [ ] triggers - [ ] `WHEN pattern { ... }` - [ ] `WHEN expr { ... }` - [ ] expressions and code blocks - [ ] properties - [ ] global scope - [ ] pattern scope - [ ] local scope - [ ] special functions - [ ] `COUNT(pattern)` - [ ] special variables - [ ] `global` - [ ] `this` - [ ] `parent` - [ ] `previous` - [ ] code editor - [ ] syntax highlighting - [ ] interactive error reporting from parser - [ ] completion - [ ] basic completion - [ ] docs in completion - [ ] context-based completion - [ ] trace visualizer - [ ] visual code editor - [ ] configurable layout - [ ] files - [ ] new (tabs / splits using configurable layout) - [ ] open examples? - [ ] close - [ ] save (localStorage? )