@ version 1 . Schema = . ; version 1 . Version = 1 . PointerName = Ref / #f. Definitions = { symbol: Definition ...:... }. ; Pattern / Pattern / ... ; and the empty pattern is Definition = / Alternative . NamedAlternative = [@name symbol @alternative Alternative]. ; Pattern & Pattern & ... ; and the universal pattern, "any", is Alternative = / Pattern . Pattern = SimplePattern / CompoundPattern . SimplePattern = ; special builtins / ; matches a pointer in the input / ; =symbol, < any>, or plain non-symbol atom / ; symbol, symbol.symbol, symbol.symbol.symbol, ... / Ref . CompoundPattern = ;