[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] GNU Guile branch, wip-peg, created. v2.0.0-173-g1a7657a
From: |
Andy Wingo |
Subject: |
[Guile-commits] GNU Guile branch, wip-peg, created. v2.0.0-173-g1a7657a |
Date: |
Thu, 30 Jun 2011 18:25:56 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".
http://git.savannah.gnu.org/cgit/guile.git/commit/?id=1a7657a16971c3be4303ad34d4042ee8344c317d
The branch, wip-peg has been created
at 1a7657a16971c3be4303ad34d4042ee8344c317d (commit)
- Log -----------------------------------------------------------------
commit 1a7657a16971c3be4303ad34d4042ee8344c317d
Author: Noah Lavine <address@hidden>
Date: Sun Mar 6 20:24:13 2011 -0500
Document PEG Internals
* doc/ref/api-peg.texi: add a manual section about the PEG internals.
commit 0de844153363ce588a42f6597f79304f66390ea0
Author: Noah Lavine <address@hidden>
Date: Sun Mar 6 00:12:37 2011 -0500
Remove eval-when
* module/ice-9/peg.scm: remove the eval-when statement
commit 2a58757ecd0a2ede11e3fb550a0136098c96e859
Author: Noah Lavine <address@hidden>
Date: Sun Mar 6 00:09:16 2011 -0500
Factor PEG Structure
* modules/ice-9/peg.scm: remove the part that defines a match structure
* modules/ice-9/peg/match-record.scm: and put it here
* module/Makefile.am (ICE_9_SOURCES): Add match-record.scm.
commit 03c1e55afe58d7c1e82d91def25fbfb83be8dd7c
Author: Noah Lavine <address@hidden>
Date: Sun Mar 6 00:02:27 2011 -0500
Factor PEG Functions
* module/ice-9/peg.scm: take out the functions for simplifying trees
* module/ice-9/peg/simplify-tree.scm: and put them here
* module/Makefile.am: Add simplify-tree.scm.
commit c556aeefd69038ef00ada0f6872596b699d1270e
Author: Noah Lavine <address@hidden>
Date: Sat Mar 5 23:54:50 2011 -0500
Separate PEG Strings
* module/ice-9/peg.scm: remove functions dealing with PEGs as strings
* module/ice-9/peg/string-peg.scm: and put them here
* module/Makefile.am: Add string-peg.scm.
commit c1f89cb0924d791aff31f86be2063e3bc9341ffd
Author: Noah Lavine <address@hidden>
Date: Sat Mar 5 22:37:11 2011 -0500
Make Macros Hygienic
* modules/ice-9/peg.scm: convert the unhygienic macros that generate code
for string PEGs to use hygiene.
commit e9c7c849da0e5eaab29802122cd45a23709ff4dc
Author: Noah Lavine <address@hidden>
Date: Sat Mar 5 16:23:05 2011 -0500
Rename in peg.scm
* module/ice-9/peg.scm: rename peg-parse-* functions to avoid confusion
with what PEGs do.
commit 43de09f94cb5c6055d4a38c81996b968eb508dfa
Author: Noah Lavine <address@hidden>
Date: Sat Mar 5 15:23:59 2011 -0500
Split peg.scm
* module/ice-9/peg.scm: move code generators to new module
* module/ice-9/peg/codegen.scm: new module for PEG code generators
* module/Makefile.am (ICE_9_SOURCES): Add codegen.scm.
commit 4c7622eb6ece4fbafbd09498e78315c75a815842
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 22:35:22 2011 +0100
reformat and reflow api-peg.texi
* doc/ref/api-peg.texi: Reformat and reflow.
commit 20f8cb08959c7cce8ca9757c093e17f1056ef7f5
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 21:28:49 2011 +0100
peg: remove error-val
* module/ice-9/peg.scm (error-val): Remove needless definition.
commit d75ec83e70367381d44887d5357832f1005c8041
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 21:27:36 2011 +0100
peg: refactor peg-sexp-compile to operate on syntax directly
* module/ice-9/peg.scm (cg-generic-ret): Remove unused for-syntax
argument.
(peg-sexp-compile): Take the pattern as syntax directly, and use
syntax-case to destructure it and dispatch to the code generators.
(cg-and, cg-and-int, cg-or, cg-or-int): Refactor to operate on syntax
instead of on s-expressions.
(cg-body): Likewise; though this was a larger refactor.
(define-nonterm, peg-match): Adapt to peg-sexp-compile calling
convention change.
(peg-string-compile): Likewise, and just take the grammar as a syntax
object.
commit 7d674773cd18cfa6db85d316ed2d7655e58920a7
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 11:33:12 2011 +0100
peg: cg-string, cg-peg-any, cg-range: remove needless for-syntax arg
* module/ice-9/peg.scm (cg-string, cg-peg-any, cg-range): Remove
unnecessary for-syntax arg.
(peg-sexp-compile): Adapt.
commit ec57e516085fa43691c9569d7063f17d220d60be
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 11:31:18 2011 +0100
peg: change some instances of "match" to "pat"
* module/ice-9/peg.scm (cg-string): Rename "match" to "pat".
(peg-sexp-compile, cg-body-test, cg-body, define-nonterm): Likewise.
commit 168177f85ae83d480b179cc1359361d5add4164a
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 11:13:39 2011 +0100
remove cggl, cg-generic-lambda
* module/ice-9/peg.scm (cg-generic-lambda, cggl): Remove these helpers,
they are no longer needed.
(cg-generic-ret): Remove optimization for particular cg- routines, as
it's no longer needed.
commit ad182261d1cac8e3d7d5006b428fef3044dd0499
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 11:10:17 2011 +0100
peg: more cggl / cggr excisions
* module/ice-9/peg.scm (cg-peg-any): Don't use cggr.
(cg-range): Don't use cggl or cggr.
commit 048bd874a84978918defdfe9ecda8f13da7796b4
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 11:03:26 2011 +0100
peg: cg-string does not use cggr
* module/ice-9/peg.scm (cg-string): Don't use cggr. Interesting to see
what it actually generates.
commit fbceaca0ab9888c44b2d1b6835a94401df3abc50
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 10:53:18 2011 +0100
peg: cg-peg-any does not use cggl
* module/ice-9/peg.scm (cg-peg-any): Don't use cggl.
commit 7a5635cf152bbb9518bce4ddc1cdffefa3a125ea
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 10:48:22 2011 +0100
peg: cg-string without cggl
* module/ice-9/peg.scm (cg-string): Refactor to not use cggl.
commit cb703fe3796fef553e2bbd6eaf909e1ad4a49548
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 10:42:13 2011 +0100
peg: cg-string improvement
* module/ice-9/peg.scm (cg-string): Use the more efficient string= with
range args, rather than string=? and substring.
commit cd1cbd319a83a9c9dc3563cbdaa1c3679d0ad125
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 10:33:03 2011 +0100
peg: helper macro docstrings
* module/ice-9/peg.scm: Convert the helper macro comments into
docstrings.
commit c19d6f93d9460634917be45148901f6e7e6c8e75
Author: Andy Wingo <address@hidden>
Date: Fri Feb 18 10:19:30 2011 +0100
peg: module-ref cleanup
* module/ice-9/peg.scm (cg-generic-ret, cg-and-int, cg-body-test):
Remove a few needless @ or @@ forms.
commit 3c5b8af6e4b2015018c82a2f2c2f89b5adb6b83c
Author: Andy Wingo <address@hidden>
Date: Thu Feb 17 14:09:31 2011 +0100
peg: remove get-code debugging foo
* module/ice-9/peg.scm (define-nonterm): Don't stash the code in a
symbol property.
(get-code): Remove.
commit 243b7be428e56e33162cbdb5f229c898046f547a
Author: Andy Wingo <address@hidden>
Date: Thu Feb 17 14:06:08 2011 +0100
peg: more syntax helper cleanup
* module/ice-9/peg.scm (single-filter, push-not-null!): Use
syntax-rules, and move outside the eval-when.
commit a9a6c57f1c0f813b98d53dfbb98e010442b47787
Author: Andy Wingo <address@hidden>
Date: Thu Feb 17 13:52:37 2011 +0100
peg: else for default cond clauses, not #t
* module/ice-9/peg.scm: Change default cases of `cond' to use `else'
instead of #t.
commit 33d6e99e98094b9de9cde15139c2b3d1eee9606a
Author: Andy Wingo <address@hidden>
Date: Thu Feb 17 13:49:28 2011 +0100
peg; syntax helper cleanups
* module/ice-9/peg.scm (until, single?, push!): Move outside the
eval-when. Use syntax-rules, and single? is faster now.
commit 82d621927d46c94009ad7b2700011e259e06eaf0
Author: Andy Wingo <address@hidden>
Date: Thu Feb 17 13:41:55 2011 +0100
peg: cleanups
* module/ice-9/peg.scm (until): Rename from until-works, and be
functional (and faster).
(peg-match): Adapt.
commit 20329a71c87e905c1b988cebc529e88bc39e6c0c
Author: Andy Wingo <address@hidden>
Date: Thu Feb 17 13:38:14 2011 +0100
peg: define-module cleanup
* module/ice-9/peg.scm: Fix up define-module block.
commit e3ca0e6a67e6e27dab1a49c07b7620438f95ae0a
Author: Noah Lavine <address@hidden>
Date: Tue Feb 1 15:15:54 2011 -0500
peg: let cleanups
* module/ice-9/peg.scm (cg-string, cg-peg-any, cg-range): Remove some
unnecessary lets.
commit 730d3b270539053ca5efe6f0a468ae10a145a99d
Author: Noah Lavine <address@hidden>
Date: Tue Feb 1 10:42:50 2011 -0500
peg: remove unhygienic safe-bind, safe-bind-f
* module/ice-9/peg.scm (safe-bind, safe-bind-f): Remove.
commit 309299fe44563c19662dd72b62dd151d60a0fef4
Author: Noah Lavine <address@hidden>
Date: Tue Feb 1 10:41:20 2011 -0500
peg: remove unused nonhygienic expander helpers
* module/ice-9/peg.scm (cggl, cggr): Remove, and rename the cggl-syn and
cggr-syn to take their place.
commit 174e1c910a543a15c3cb62360338cc018a205995
Author: Noah Lavine <address@hidden>
Date: Tue Feb 1 10:36:08 2011 -0500
peg: more helpers returning syntax
* module/ice-9/peg.scm (cg-body, cg-body-success, cg-body-more)
(cg-body-ret): Return syntax instead of s-expressions.
commit 8d1797e457fc3807aa596c813541ee00dd104422
Author: Noah Lavine <address@hidden>
Date: Mon Jan 31 15:08:32 2011 -0500
peg: cg-or, cg-or-int return syntax
* module/ice-9/peg.scm (cg-or, cg-or-int): Return syntax instead of
s-expressions.
(peg-sexp-compile): Adapt.
commit 9506971d2666371452b305affb1a0a50b1470092
Author: Noah Lavine <address@hidden>
Date: Mon Jan 31 15:04:59 2011 -0500
peg: hygiene in cg-and, cg-and-int
* module/ice-9/peg.scm (cg-and, cg-and-int): Use cggr-syn instead of
cggr, and also return syntax now instead of s-expressions.
commit 3c2e33de25f86354aad0e5c3326fa00fe30faace
Author: Noah Lavine <address@hidden>
Date: Mon Jan 31 14:58:15 2011 -0500
peg: hygiene in cg-range
* module/ice-9/peg.scm (cg-range): Use cggl-syn and cggr-syn.
commit 714fbfd49561e8eac8976118075a545ae4d5f49f
Author: Noah Lavine <address@hidden>
Date: Mon Jan 31 14:56:02 2011 -0500
peg: hygiene in cg-peg-any
* module/ice-9/peg.scm (cg-peg-any): Use cggl-syn and cggr-syn.
commit 9f722d26099ed4c1cfadfda532f25e4a106f691a
Author: Noah Lavine <address@hidden>
Date: Mon Jan 31 14:45:32 2011 -0500
peg: more hygiene in cg-string
* module/ice-9/peg.scm (cggl-syn, cggr-syn): New functions, equivalent
to cggl and cggr except that they operate on syntax instead of
s-expressions.
(cg-string): Use them here.
commit f85c87dd8dd6b78357bba33aba2ffc47c4bfcb33
Author: Noah Lavine <address@hidden>
Date: Sun Jan 30 16:10:07 2011 -0500
peg: lower datum->syntax in cg-range case
* module/ice-9/peg.scm (cg-range): Datum->syntax here...
(peg-sexp-compile): ...instead of here.
commit 28ff0654096b93c1e281ab3e89279b8caf7b80ef
Author: Noah Lavine <address@hidden>
Date: Sun Jan 30 16:07:34 2011 -0500
peg: lower datum->syntax in cg-peg-any case
* module/ice-9/peg.scm (cg-peg-any): Datum->syntax here...
(peg-sexp-compile): ...instead of here.
commit bcff6088e44e21577b66f2d1e978aae1ceddf02b
Author: Noah Lavine <address@hidden>
Date: Sun Jan 30 16:04:36 2011 -0500
peg: lower datum->syntax in cg-string case
* module/ice-9/peg.scm (cg-string): Return syntax instead of
s-expressions.
(peg-sexp-compile): No need for datum->string in cg-string case.
commit a3f537d073f423545988550ee5cbfd2888ed033a
Author: Noah Lavine <address@hidden>
Date: Sun Jan 30 15:59:52 2011 -0500
peg: peg-sexp-compile datum->syntax refactor
* module/ice-9/peg.scm (peg-sexp-compile): Push datum->syntax call
through cond expression in peg-sexp-compile. This is a preliminary
move so that I can convert the code-generating functions into
syntax-generating functions one by one.
commit 9080469985329590a8a335213138da64585a8cce
Author: Noah Lavine <address@hidden>
Date: Sat Jan 29 14:12:38 2011 -0500
peg: compilers return syntax instead of s-expressions
* module/ice-9/peg.scm (peg-sexp-compile, peg-string-compile): Return
syntax instead of s-expressions.
commit dc9f701faef60ac8cf7418d85fa36524cc396e56
Author: Noah Lavine <address@hidden>
Date: Sat Jan 29 14:07:49 2011 -0500
peg: beginnings of hygiene
* module/ice-9/peg.scm: Pass for-syntax argument to all of the
code-generating functions.
commit 165dc9d227102b2bb7c31ac07c7f4cfd6ecd940b
Author: Noah Lavine <address@hidden>
Date: Sat Jan 29 13:42:32 2011 -0500
peg: more syntax-for-non-cache-case cleanups
* module/ice-9/peg.scm (syntax-for-non-cache-case): More cleanups.
commit 44c8b60761fba90f58dd18696372289956df58ad
Author: Noah Lavine <address@hidden>
Date: Sat Jan 29 13:36:41 2011 -0500
peg: clean up syntax-for-non-cache-case
* module/ice-9/peg.scm (syntax-for-non-cache-case): Cleanups.
commit bccbdc5b36ff0c6cd85486bb61080094f75884d6
Author: Noah Lavine <address@hidden>
Date: Sat Jan 29 13:30:48 2011 -0500
peg: use quasisyntax instead of safe-bind
* module/ice-9/peg.scm (syntax-for-non-cache-case): Use quasisyntax
instead of safe-bind.
commit 7e4bd2e63da84592d1cd8febb17838ce86c43fe5
Author: Noah Lavine <address@hidden>
Date: Sat Jan 29 12:55:43 2011 -0500
peg: define-nonterm returns syntax instead of s-expression
* module/ice-9/peg.scm (define-nonterm, syntax-for-non-cache-case):
Returns syntax instead of an s-expression.
commit 5c33852b08331904eda785aa3b330d8c2fe79ef5
Author: Noah Lavine <address@hidden>
Date: Sat Jan 29 12:40:37 2011 -0500
peg: split define-nonterm into two functions for better readability.
* module/ice-9/peg.scm (define-nonterm): Split for readability.
commit ccedcac5ef3ed02a02803dafc11b725b020a4ca6
Author: Andy Wingo <address@hidden>
Date: Thu Feb 17 13:28:37 2011 +0100
peg: add copyright header
* module/ice-9/peg.scm: Add copyright header.
commit 4a0de25e591a4c1e6223fb97edf22e43212cfe1d
Author: Michael Lucy <address@hidden>
Date: Mon Jul 5 00:28:16 2010 -0500
add PEG parser generator
* module/ice-9/peg.scm: New file.
* module/Makefile.am: Add to build.
* doc/ref/Makefile.am:
* doc/ref/api-peg.texi:
* doc/ref/guile.texi: Add documentation for PEG parser.
* test-suite/Makefile.am:
* test-suite/tests/peg.bench:
* test-suite/tests/peg.test: Add tests, and a benchmark.
-----------------------------------------------------------------------
hooks/post-receive
--
GNU Guile
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Guile-commits] GNU Guile branch, wip-peg, created. v2.0.0-173-g1a7657a,
Andy Wingo <=