Block-based syntax from context-free grammars | Synapse