script.g4

script

expr ';' expr

tuple_pair

EscapedString '>>' expr

expr

'(' expr ')' expr '+' expr expr '-' expr expr '/' expr expr '%' expr expr '*' expr expr '++' expr expr '@' expr expr '&&' expr expr '||' expr '|' expr '|' expr '==' expr expr '!=' expr expr '<=' expr expr '>=' expr expr '>' expr expr '<' expr expr ':=' expr '(' expr expr ')' 'var(' expr ')' 'eval(' expr ')' NOT expr expr '=>' expr IF expr THEN expr ELSE expr 'sub(' expr ',' expr ':' expr ')' expr '[' expr ']' expr '[[' expr ']]' expr '[' expr ']:=' expr expr 'in' expr REMOVE expr FROM expr NUMBER BOOL EscapedString BOT STRINGT BOOLT INTT DOUBLET expr AND_TYPE expr expr OR_TYPE expr LISTT expr 't<' tuple_pair ';' tuple_pair ARPAREN ANYT VOID LABELT EscapedString ObjT expr expr LPAREN expr ';' expr RPAREN START ALPAREN tuple_pair ';' tuple_pair ARPAREN FUN VARNAME '->' LPAREN expr ';' expr RPAREN VARNAME 'map(' expr ':' expr ')' 'select(' expr ':' expr ')' 'filter(' expr ':' expr ')' 'rfold(' expr ',' expr ':' expr ')' 'lfold(' expr ',' expr ':' expr ')' LOG expr expr POW expr expr SIN expr COS expr TAN expr '|_' expr '_|' '|-' expr '-|' PHI expr expr ELL expr XI expr INJ expr OBJ expr FLAT expr CROSS expr expr SELFX expr VARPHI expr TYPEOF expr SIGMA expr 'where' expr expr SUBTYPE expr ASSERT expr expr ENFORCE expr COERCE expr 'as' expr

VOID

'void'

BOT

'null' 'â”´'

COERCE

'coerce'

ObjT

'ObjT'

TYPEOF

'typeof'

SIGMA

'sigma'

ASSERT

'assert'

STRINGT

'string'

LABELT

'label'

DOUBLET

'double'

ANYT

'any' '┬'

BOOLT

'bool'

INTT

'int'

START

'star'

KIND

'kind'

LISTT

'listof'

SUBTYPE

'<:'

ALPAREN

'<'

ARPAREN

'>'

LPAREN

'{'

RPAREN

'}'

BOOL

'tt' 'ff'

AND_TYPE

'/\'

OR_TYPE

'\/'

FUN

'fun'

NOT

'not'

IF

'if'

THEN

'then'

ELSE

'else'

REMOVE

'remove'

FROM

'from'

LOG

'log'

POW

'pow'

SIN

'sin'

COS

'cos'

TAN

'tan'

PHI

'phi'

ELL

'ell'

XI

'xi'

INJ

'inj'

OBJ

'OBJ'

FLAT

'flat'

SELFX

'selfx'

VARPHI

'varphi'

CROSS

'cross'

SCRIPT

'script'

GSQL

'gsql'

CREATEDB

'CREATEDB'

VARNAME

[a-z]

CREATE

'CREATE'

ELECT

'ELECT'

MAP

'MAP'

DISJOINT

'DISJOINT'

FOLD

'FOLD'

ENFORCE

'enforce_subtype'

EscapedString

'"' not [\"] '\' [\"] '"'

NUMBER

[+-] DecimalFloatingConstant [+-] DIGIT

INTEGER

[+-] DIGIT

SPACE

[ \t\r\n]

COMMENT

'/*' any char '*/'

LINE_COMMENT

'//' not [\r\n]

DecimalFloatingConstant

[0-9] '.' DIGIT DIGIT '.' DIGIT ExponentPart

FractionalConstant

[0-9] '.' DIGIT DIGIT '.'

ExponentPart

[eE] [+-] DIGIT

DIGIT

[0-9]