(datatype action
(:shift int)
(:reduce int int))
(datatype action-list
(:nil)
(:cons int (action) (action-list)))
(datatype goto-list
(:nil)
(:cons int int (goto-list)))
(define terminals '#(
rparen
STRING
NEWLINE
NUMBER
<e>
<$>
comma
lparen
NAME
))
(define non-terminals '#(
predicate_c_2_q
predicate
list_c_1_s1
<S>
expr
list
file_c_0_s_o
file
atom
))
(define actions
(literal #(
(action-list:cons 5 (action:reduce 0 7) (action-list:cons 3 (action:shift 3) (action-list:cons 2 (action:shift 2) (action-list:cons 1 (action:shift 1) (action-list:cons 8 (action:shift 4) (action-list:nil))))))
(action-list:cons 8 (action:reduce 1 8) (action-list:cons 6 (action:reduce 1 8) (action-list:cons 5 (action:reduce 1 8) (action-list:cons 3 (action:reduce 1 8) (action-list:cons 2 (action:reduce 1 8) (action-list:cons 1 (action:reduce 1 8) (action-list:cons 0 (action:reduce 1 8) (action-list:nil))))))))
(action-list:cons 5 (action:reduce 1 6) (action-list:cons 3 (action:reduce 1 6) (action-list:cons 2 (action:reduce 1 6) (action-list:cons 1 (action:reduce 1 6) (action-list:cons 8 (action:reduce 1 6) (action-list:nil))))))
(action-list:cons 8 (action:reduce 1 8) (action-list:cons 6 (action:reduce 1 8) (action-list:cons 5 (action:reduce 1 8) (action-list:cons 3 (action:reduce 1 8) (action-list:cons 2 (action:reduce 1 8) (action-list:cons 1 (action:reduce 1 8) (action-list:cons 0 (action:reduce 1 8) (action-list:nil))))))))
(action-list:cons 8 (action:reduce 1 8) (action-list:cons 7 (action:shift 10) (action-list:cons 6 (action:reduce 1 8) (action-list:cons 5 (action:reduce 1 8) (action-list:cons 3 (action:reduce 1 8) (action-list:cons 2 (action:reduce 1 8) (action-list:cons 1 (action:reduce 1 8) (action-list:cons 0 (action:reduce 1 8) (action-list:nil)))))))))
(action-list:cons 8 (action:reduce 1 4) (action-list:cons 6 (action:reduce 1 4) (action-list:cons 5 (action:reduce 1 4) (action-list:cons 3 (action:reduce 1 4) (action-list:cons 2 (action:reduce 1 4) (action-list:cons 1 (action:reduce 1 4) (action-list:cons 0 (action:reduce 1 4) (action-list:nil))))))))
(action-list:cons 5 (action:reduce 1 6) (action-list:cons 3 (action:reduce 1 6) (action-list:cons 2 (action:reduce 1 6) (action-list:cons 1 (action:reduce 1 6) (action-list:cons 8 (action:reduce 1 6) (action-list:nil))))))
(action-list:cons 5 (action:reduce 0 7) (action-list:cons 3 (action:shift 3) (action-list:cons 2 (action:shift 2) (action-list:cons 1 (action:shift 1) (action-list:cons 8 (action:shift 4) (action-list:nil))))))
(action-list:cons 5 (action:shift 12) (action-list:nil))
(action-list:cons 8 (action:reduce 1 4) (action-list:cons 6 (action:reduce 1 4) (action-list:cons 5 (action:reduce 1 4) (action-list:cons 3 (action:reduce 1 4) (action-list:cons 2 (action:reduce 1 4) (action-list:cons 1 (action:reduce 1 4) (action-list:cons 0 (action:reduce 1 4) (action-list:nil))))))))
(action-list:cons 0 (action:reduce 0 0) (action-list:cons 3 (action:shift 3) (action-list:cons 1 (action:shift 1) (action-list:cons 8 (action:shift 4) (action-list:nil)))))
(action-list:cons 5 (action:reduce 2 7) (action-list:nil))
(action-list:cons 4 (action:reduce 2 3) (action-list:nil))
(action-list:cons 0 (action:shift 16) (action-list:nil))
(action-list:cons 6 (action:shift 17) (action-list:cons 0 (action:reduce 0 2) (action-list:nil)))
(action-list:cons 0 (action:reduce 1 0) (action-list:nil))
(action-list:cons 8 (action:reduce 4 1) (action-list:cons 6 (action:reduce 4 1) (action-list:cons 5 (action:reduce 4 1) (action-list:cons 3 (action:reduce 4 1) (action-list:cons 2 (action:reduce 4 1) (action-list:cons 1 (action:reduce 4 1) (action-list:cons 0 (action:reduce 4 1) (action-list:nil))))))))
(action-list:cons 3 (action:shift 3) (action-list:cons 1 (action:shift 1) (action-list:cons 8 (action:shift 4) (action-list:nil))))
(action-list:cons 0 (action:reduce 2 5) (action-list:nil))
(action-list:cons 6 (action:shift 17) (action-list:cons 0 (action:reduce 0 2) (action-list:nil)))
(action-list:cons 0 (action:reduce 3 2) (action-list:nil))
)))
(define goto
(literal #(
(goto-list:cons 4 6 (goto-list:cons 1 5 (goto-list:cons 8 9 (goto-list:cons 7 8 (goto-list:cons 6 7 (goto-list:nil))))))
(goto-list:nil)
(goto-list:nil)
(goto-list:nil)
(goto-list:nil)
(goto-list:nil)
(goto-list:nil)
(goto-list:cons 4 6 (goto-list:cons 1 5 (goto-list:cons 8 9 (goto-list:cons 7 11 (goto-list:cons 6 7 (goto-list:nil))))))
(goto-list:nil)
(goto-list:nil)
(goto-list:cons 0 13 (goto-list:cons 1 5 (goto-list:cons 8 9 (goto-list:cons 5 15 (goto-list:cons 4 14 (goto-list:nil))))))
(goto-list:nil)
(goto-list:nil)
(goto-list:nil)
(goto-list:cons 2 18 (goto-list:nil))
(goto-list:nil)
(goto-list:nil)
(goto-list:cons 4 19 (goto-list:cons 1 5 (goto-list:cons 8 9 (goto-list:nil))))
(goto-list:nil)
(goto-list:cons 2 20 (goto-list:nil))
(goto-list:nil)
)))