compiler front-end from a Labelled BNF grammar. It was originally
written to generate Haskell, but starting from Version 2.0, it can
also be used for generating Java, C++, and C.
Given a Labelled BNF grammar the tool produces:
* an abstract syntax as a Haskell/C++/C module or Java directory
* a case skeleton for the abstract syntax in the same language
* an Alex, JLex, or Flex lexer generator file
* a Happy, CUP, or Bison parser generator file
* a pretty-printer as a Haskell/Java/C++/C module
* a Latex file containing a readable specification of the language
WWW: http://www.cs.chalmers.se/~markus/BNFC/
PR: ports/109038
Submitted by: Kai Wang <kaiw27 at gmail.com>
This is the FreeBSD Ports Collection. For an easy to use
WEB-based interface to it, please see:
http://www.FreeBSD.org/ports
For general information on the Ports Collection, please see the
FreeBSD Handbook ports section which is available from:
http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/ports.html
for the latest official version
or:
The ports(7) manual page (man ports).
These will explain how to use ports and packages.
If you would like to search for a port, you can do so easily by
saying (in /usr/ports):
make search name="<name>"
or:
make search key="<keyword>"
which will generate a list of all ports matching <name> or <keyword>.
make search also supports wildcards, such as:
make search name="gtk*"
For information about contributing to FreeBSD ports, please see the Porter's
Handbook, available at:
http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/porters-handbook/
NOTE: This tree will GROW significantly in size during normal usage!
The distribution tar files can and do accumulate in /usr/ports/distfiles,
and the individual ports will also use up lots of space in their work
subdirectories unless you remember to "make clean" after you're done
building a given port. /usr/ports/distfiles can also be periodically
cleaned without ill-effect.