📄 xminigol.grm
字号:
userdefined domains PROCID
productions
EXP = EXP plus EXP -> plus(EXP,EXP),
EXP minus EXP -> minus(EXP,EXP)
--
EXP mult EXP -> mult(EXP,EXP),
EXP div EXP -> div(EXP,EXP)
--
rightassoc EXP power EXP -> power(EXP,EXP),
EXP exclmmark -> factorial(EXP),
EXP questionmark EXP colon EXP -> conditional(EXP,EXP,EXP)
--
id(STRING) lpar PARMLIST rpar -> call(PROCID,PARMLIST),
id(STRING) -> var(STRING),
minus EXP -> neg(EXP),
int(INTEGER) -> int(INTEGER),
real(REAL) -> real(REAL),
str(STRING) -> str(STRING),
char(CHAR) -> char(CHAR),
lpar EXP rpar -> EXP
PARMLIST = EXP+ separator comma
SENT = if_ EXP then SENT else SENT -> ifthenelse(EXP,SENT,SENT),
if_ EXP then SENT -> ifthen(EXP,SENT),
while EXP do SENT -> while(EXP,SENT),
goto int(INTEGER) -> goto_line(INTEGER),
goto id(STRING) -> goto_lbl(STRING)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -