-- Basic ASDL example
module Slp {

stm = Compound(stm, stm)
    | Assign(identifier, exp) 
    | Print(exp_list)

exp_list = ExpList(exp, exp_list) 
         | Nil

exp = Id(identifier)
    | Num(int)
    | Op(exp, binop, exp)

binop = Plus | Minus | Times | Div

}