Received: from localhost ([::1]:44341 helo=stodi.digitalkingdom.org) by stodi.digitalkingdom.org with esmtp (Exim 4.76) (envelope-from ) id 1RMKpc-0003fw-89; Fri, 04 Nov 2011 07:33:20 -0700 Received: from 173-13-139-235-sfba.hfc.comcastbusiness.net ([173.13.139.235]:42480 helo=jukni.digitalkingdom.org) by stodi.digitalkingdom.org with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1RMKpR-0003fd-N6 for wikineurotic@lojban.org; Fri, 04 Nov 2011 07:33:18 -0700 Received: from jukni.digitalkingdom.org (localhost [127.0.0.1]) by jukni.digitalkingdom.org (8.14.5/8.14.5) with ESMTP id pA4EX9QM008488 for ; Fri, 4 Nov 2011 07:33:09 -0700 Received: (from apache@localhost) by jukni.digitalkingdom.org (8.14.5/8.14.5/Submit) id pA4EX8FF008487; Fri, 4 Nov 2011 07:33:08 -0700 Date: Fri, 4 Nov 2011 07:33:08 -0700 X-Authentication-Warning: jukni.digitalkingdom.org: apache set sender to webmaster@lojban.org using -f To: wikineurotic@lojban.org X-PHP-Originating-Script: 48:htmlMimeMail.php MIME-Version: 1.0 From: webmaster@lojban.org Message-ID: X-Spam-Score: 1.0 (+) X-Spam_score: 1.0 X-Spam_score_int: 10 X-Spam_bar: + X-Spam-Report: Spam detection software, running on the system "stodi.digitalkingdom.org", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The page PEG was changed by najrut at 14:33 UTC You can view the page by following this link: http://www.lojban.org/tiki/PEG [...] Content analysis details: (1.0 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.4 RDNS_DYNAMIC Delivered to internal network by host with dynamic-looking rDNS 0.6 TO_NO_BRKTS_DYNIP To: misformatted and dynamic rDNS Subject: [Wikineurotic] Wiki page PEG changed by najrut X-BeenThere: wikineurotic@lojban.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: webmaster@lojban.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: wikineurotic-bounces@lojban.org The page PEG was changed by najrut at 14:33 UTC You can view the page by following this link: http://www.lojban.org/tiki/PEG You can view a diff back to the previous version by following this link: http://www.lojban.org/tiki/tiki-pagehistory.php?page=PEG&compare=1&oldver=9&newver=10 *********************************************************** The changes in this version follow below, followed after by the current full page text. *********************************************************** +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ @@ -Lines: 6-20 changed to +Lines: 6-16 @@ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! 4th Baseline Machine Grammar Proposal - ((.alyn.post.)) is working on a proposal for a 4th Machine Grammar Baseline, replacing the 3rd baseline's ((YACC)) grammar with a PEG grammar. This work is scheduled for inclusion into ((Suggestions for CLL, second edition|CLL version 2.0)) or ((CLL Peg Errata|CLL version 2.1)). !! Morphology - Since PEG does not have a separate lexing stage, any PEG Machine Grammar will also need to express the Lojban Morphology in PEG. - * ((BPFK Section: Formal Morphology)) !! Technical Points of the PEG language - * The '.' characters means any character, in any character set. It is only used after fa'o, which unconditionally consumes the remaining characters. * '!.' is the way EOF is tested in PEG. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ @@ -Lines: 22-41 changed to +Lines: 18-33 @@ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ !! CLL - The CLL will need to be updated to account for changes resulting from the translation of the grammar to PEG. - Main Article: ((CLL PEG Errata)) !! Uncategorized Material -
* ((Stuff that would require a baseline change))
* ((rant about "exploiting the preparser")) + ** ((Practicable syntax changes))
** ((Exploiting the preparser))
*** ((rant about "exploiting the preparser")) ! Open Discussion Points - * jbogenturfa'i further transforms the PEG grammar into an idealized representation. This parse tree is suitable for programmatic manipulation. Why is this idealized parse tree not the way the PEG is written? ! Lojban parsers that use PEG - * ((camxes)), the original PEG parser from which all others are based. * ((jbogentufa'i)) +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ @@ -Lines: 43-49 changed to +Lines: 35-40 @@ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ! See Also - * [http://www.teddyb.org/~rlpowell/hobbies/lojban/grammar/|Robin Powell's PEG Grammar Page]. This document builds on the work ((camgusmis)) and ((xorxes)) have done, documented on this page. * ((Grammar)), for a discussion of Lojban's grammar beyond PEG. * ((YACC)), the language in which Lojban's official grammar is defined. * ((BNF)), widely considered easier to read than the YACC grammar. *********************************************************** The new page content follows below. *********************************************************** Parsing Expression grammars. Parsing expression grammars allow for full lookahead and backtracking in time linear to the input size. This makes them more expressive than ((YACC)) or ((BNF)), which are limited in the how far they look ahead, and as a consequence how far they can backtrack. They also require more memory than either YACC or BNF to parse an equivalently sized input. PEG grammars also do not have a separate lexing stage. Lexing and parsing are performed at the same time, using the same language for both. See wikipedia for additional general information on [http://en.wikipedia.org/wiki/Parsing_expression_grammar|Parsing Expression Grammars]. ! 4th Baseline Machine Grammar Proposal ((.alyn.post.)) is working on a proposal for a 4th Machine Grammar Baseline, replacing the 3rd baseline's ((YACC)) grammar with a PEG grammar. This work is scheduled for inclusion into ((Suggestions for CLL, second edition|CLL version 2.0)) or ((CLL Peg Errata|CLL version 2.1)). !! Morphology Since PEG does not have a separate lexing stage, any PEG Machine Grammar will also need to express the Lojban Morphology in PEG. * ((BPFK Section: Formal Morphology)) !! Technical Points of the PEG language * The '.' characters means any character, in any character set. It is only used after fa'o, which unconditionally consumes the remaining characters. * '!.' is the way EOF is tested in PEG. * space is defined as the literal '.' (as opposed to the '.' operator of PEG), whitespace, and all punctuation other than ',' and '''. !! CLL The CLL will need to be updated to account for changes resulting from the translation of the grammar to PEG. Main Article: ((CLL PEG Errata)) !! Uncategorized Material ** ((Practicable syntax changes)) ** ((Exploiting the preparser)) *** ((rant about "exploiting the preparser")) ! Open Discussion Points * jbogenturfa'i further transforms the PEG grammar into an idealized representation. This parse tree is suitable for programmatic manipulation. Why is this idealized parse tree not the way the PEG is written? ! Lojban parsers that use PEG * ((camxes)), the original PEG parser from which all others are based. * ((jbogentufa'i)) * ((jbominje)), John Leuner's PEG grammar. The [http://subvert-the-dominant-paradigm.net/~jbominji/code/lojban_grammar.peg|lojban_grammar.peg|grammar] is derived from camxes. ! See Also * [http://www.teddyb.org/~rlpowell/hobbies/lojban/grammar/|Robin Powell's PEG Grammar Page]. This document builds on the work ((camgusmis)) and ((xorxes)) have done, documented on this page. * ((Grammar)), for a discussion of Lojban's grammar beyond PEG. * ((YACC)), the language in which Lojban's official grammar is defined. * ((BNF)), widely considered easier to read than the YACC grammar. _______________________________________________ Wikineurotic mailing list Wikineurotic@lojban.org http://mail.lojban.org/mailman/listinfo/wikineurotic