((section 2 "Outdated egg!" (p "This is an egg for CHICKEN 4, the unsupported old release.  You're almost certainly looking for " (int-link "/eggref/5/jbogenturfahi" "the CHICKEN 5 version of this egg") ", if it exists.") (p "If it does not exist, there may be equivalent functionality provided by another egg; have a look at the " (link "https://wiki.call-cc.org/chicken-projects/egg-index-5.html" "egg index") ". Otherwise, please consider porting this egg to the current version of CHICKEN.") (tags "egg")) (section 2 "jbogenturfa'i" (p ".i lo lojbo ke pe'a jajgau ratcu ke'e genturfa'i") (toc) (section 3 "Description" (p "jbogenturfa'i is a parser for the Lojban language.") (p (b "Note that this egg has not yet been written."))) (section 3 "Authors" (p (int-link "/users/alyn.post" ".alyn.post.") ".  The morphology file used by this parser was written by " (link "http://www.lojban.org/tiki/tiki-index.php?page=xorxes" ".xorxes.") " The grammar file used by this parser was translated and modified from the official grammar by " (link "http://www.lojban.org/tiki/tiki-index.php?page=Robin+Lee+Powell" ".camgusmis."))) (section 3 "Requirements" (p "Requires " (int-link "genturfahi" "genturfa'i") ", a scheme packrat parser.")) (section 3 "Source Code" (p "The source code for this egg can be viewed by version:") (ul (li (link "http://bugs.call-cc.org/browser/release/4/jbogenturfahi/trunk" "trunk"))) (p "A copy of this project is also hosted on " (link "http://github.com" "github") ":") (ul (li (link "http://github.com/alanpost/jbogenturfahi" "jbogenturfa'i")))) (section 3 "History" (p "There are multiple grammar definitions and parsers available for Lojban.") (p "The " (link "http://www.lojban.org/publications/formal-grammars/grammar.300.txt" "official grammar") " is written in YACC.  This grammar is the only one endorsed by the Logical Language Group, and represents the official grammar of the language.") (p "As the YACC parser is difficult to read, there is also a " (link "http://www.lojban.org/publications/formal-grammars/bnf.300.txt" "BNF grammar file") ". Where this file differs from the YACC file, the YACC file takes precedence.  The BNF file is easier to understand.") (p "Since publishing the official grammar, Brian Ford coined the modern terms PEGs and packrat parsing, and other people took up the work of developing PEG parsers.") (p "PEG parsers hold the promise of specifying the full grammar of Lojban, including the morphology, in a language (PEG) that is easy to understand by humans.") (p (link "http://www.lojban.org/tiki/tiki-index.php?page=Robin+Lee+Powell" "Robin Lee Powell") " has published \"" (link "http://www.digitalkingdom.org/~rlpowell/hobbies/lojban/grammar/" "Issues With The Lojban Formal Grammar") "\" discussing the ways in which the YACC and BNF grammar are not suitable for Lojban, and proposes using a PEG-specified grammar to parse Lojban.") (p "This work culminated in the released of camxes, a parser for Lojban's PEG grammar written in Java.") (p "jbogenturfa'i uses the morphology and grammar file developed for camxes.")) (section 3 "Wish List" (ul (li "Write this program.") (li "Add the grammar parsed by this egg to the " (link "http://www.lojban.org/tiki/tiki-index.php?page=list+of+all+variants+of+the+PEG+grammar" "List of all variants of the PEG grammar") ".") (li "C interface for grammar parsing.  (For integration with other systems and languages."))) (section 3 "Related Projects" (ul (li (link "http://www.digitalkingdom.org/~rlpowell/hobbies/lojban/grammar/" "camxes") " is a Lojban parser written in Java.") (li (link "http://www.rc0.org.uk/jbofihe/" "jbofi'e") " is a Lojban parser using the BNF grammar.") (li (link "http://subvert-the-dominant-paradigm.net/~jbominji/jbominji.html" "jbonminji") " is a Lojban parser for Common Lisp."))) (section 3 "License" (pre "Copyright (c) 2010 \".alyn.post.\" <alyn.post@lodockikumazvati.org>\n \nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted, provided that the above\ncopyright notice and this permission notice appear in all copies.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\nWITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\nANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\nWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\nACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\nOR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.")) (section 3 "Version History" (dl (dt "0.0.1") (dd "Initial release.")))))