NAME¶
jocamlyacc - The JoCaml parser generator
SYNOPSIS¶
jocamlyacc [
-v ] [
-bprefix ]
filename.mly
DESCRIPTION¶
The
jocamlyacc(1) command produces a parser from a LALR(1) context-free
grammar specification with attached semantic actions, in the style of
yacc(1). Assuming the input file is
grammar.mly, running
jocamlyacc produces Caml code for a parser in the file
grammar.ml, and its interface in file
grammar.mli.
The generated module defines one parsing function per entry point in the
grammar. These functions have the same names as the entry points. Parsing
functions take as arguments a lexical analyzer (a function from lexer buffers
to tokens) and a lexer buffer, and return the semantic attribute of the
corresponding entry point. Lexical analyzer functions are usually generated
from a lexer specification by the
jocamllex(1) program. Lexer buffers
are an abstract data type implemented in the standard library module Lexing.
Tokens are values from the concrete type token, defined in the interface file
grammar.mli produced by
jocamlyacc(1).
OPTIONS¶
The
jocamlyacc(1) command recognizes the following options:
- -v
- Generate a description of the parsing tables and a report
on conflicts resulting from ambiguities in the grammar. The description is
put in file grammar.output.
- -bprefix
- Name the output files prefix.ml, prefix.mli,
prefix.output, instead of the default naming convention.
SEE ALSO¶
jocamllex(1).
The Objective Caml user's manual, chapter "Lexer and parser
generators".