[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] GNU Guile branch, peg-rebase, created. v2.1.0-130-g02b94
From: |
Noah Lavine |
Subject: |
[Guile-commits] GNU Guile branch, peg-rebase, created. v2.1.0-130-g02b9471 |
Date: |
Fri, 27 May 2011 01:28:54 +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=02b9471d520815650b97b9efb51421c85e012dae
The branch, peg-rebase has been created
at 02b9471d520815650b97b9efb51421c85e012dae (commit)
- Log -----------------------------------------------------------------
commit 02b9471d520815650b97b9efb51421c85e012dae
Author: Noah Lavine <address@hidden>
Date: Fri Apr 15 17:04:02 2011 -0400
Make PEG Files
* module/ice-9/peg/using-parsers.scm: remove unnecessary dependency
* module/ice-9/peg.scm: add comment about string-peg dependency
* module/Makefile.scm: add PEG files to makefile
commit 3feff29074b1c999377d26e94130c40a48bbc6c2
Author: Noah Lavine <address@hidden>
Date: Fri Apr 15 16:57:11 2011 -0400
Rearrange PEG Modules
* module/ice-9/peg.scm: move code out of here
* module/ice-9/peg/match-records.scm: remove this file
* module/ice-9/peg/using-parsers.scm: make a new module with utilities for
using parsers. It contains the code from both peg.scm and
match-records.scm
* module/ice-9/peg/string-peg.scm: update to use new module
commit 9fe942bc9ef0c186dfed55acc367f9c736156249
Author: Noah Lavine <address@hidden>
Date: Fri Apr 1 19:45:54 2011 -0400
PEG Cache Module
* module/ice-9/peg/cache.scm: add module to hold cache logic for PEG
parsers
* module/ice-9/peg.scm: move cache logic out of here
commit 8c345079407a5bc53ae6568b5c0f31a5f8818563
Author: Noah Lavine <address@hidden>
Date: Thu Mar 31 17:42:36 2011 -0400
Update String PEGs
* module/ice-9/peg/string-peg.scm: use new interface for extending PEG
syntax
* module/ice-9/peg.scm: remove peg-extended-compile
commit c6cbeeb486d853b46bcab73b8ea60ad88e15f954
Author: Noah Lavine <address@hidden>
Date: Thu Mar 31 17:04:06 2011 -0400
Extensible PEG Syntax
* module/ice-9/peg/codegen.scm: Make the PEG syntax extensible, and
move most of the current code generators to the new interface
* doc/ref/api-peg.texi: Document PEG extensions in the PEG Internals
section of the manual
commit 3a25eb737bdfa58ce1453f2b0a0629f8b07f64ec
Author: Noah Lavine <address@hidden>
Date: Mon Mar 28 15:18:27 2011 -0400
Separate PEG Concerns
* module/ice-9/peg/codegen.scm: peg-sexp-compile no longer knows about
string PEGs
* module/ice-9/peg.scm: add a new function peg-extended-compile that
calls peg-sexp-compile or peg-string-compile on its argument as
appropriate
commit 0448ad3c63353de1997c0e15a691769df065fa0e
Author: Noah Lavine <address@hidden>
Date: Mon Mar 28 15:13:35 2011 -0400
Move define-nonterm
* module/ice-9/peg/string-peg.scm: remove define-nonterm and make a simpler
macro called `define-sexp-parser' to make the PEG grammar
* module/ice-9/peg.scm: move define-nonterm macro to this file
* module/ice-9/peg/codegen.scm: move code to wrap a parser result nicely to
this file, under name `wrap-parser-for-users'
commit dee7059e66914bb07cf176b7fc819b37ea1f93ee
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 6cbe5a8dce1230bd833b94440b2cd8503597f5e6
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 d6139f205bc93b2f9abef9861dd83247421a1db9
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
commit 06726f1688410dcaaa7d890cf64eb2ac78b76a5d
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
commit ae5f169e4133b3b5dcdaaf7c444d4efbaf6ff745
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
commit f0742d0ef0e22a56f13821b75675755ca92a2e94
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 4146712f772a13b9d51c5b3179a7641cbe29da02
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 983eccb421c0f5ed4693eebbc9ade202f29bb246
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
commit 9c96479013250d132b0f5edb09c652959021176b
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 c7809cb7ca9a9820b43304d63f81e9ad5aab732c
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 ad70b1df155efd6b5628915130aad4929205a6ae
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 7555c07e90dbf4d3ab663e630674fce5be9b86bb
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 fa4255e4e1ddd833f1054518c63599f3da589b21
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 18c87c27cf9fdf0db4355b42b5901213565be361
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 50e33c5e2b4b4245c44c67b0ac1e30a150767a2e
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 e449d70eebe9699d7db9d948327370b1fdb1a33c
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 560e64070cb8138b898550ef49ef0a2673136fd8
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 fe4d08a430d5aaf369f058d8a5b30b1eaeb111bb
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 027c85b873862f5fd9d2026d4f6838c96df2c469
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 8fb6b7323578adf514e238c38a72ba3d4e863a80
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 bda8d0608d934f93fa99859d90fcf436973e050c
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 1172a4e9c5f30bcd2592a8f44d618ce2a93a5773
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 1dbaef9c7058263cbc1209f2d47b80a9b4ab3d51
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 779715df3002d46f1432e08d7cc7bccc4c5e0a9e
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 01c570fc4e2badcc7dd6700e7e73ce221cf3acbc
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 95b9a95d379b807cd4a6f230bf7c294d2786fbe4
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 f9d1b28286ba72c958f24c5ce3564441fbf38623
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 5367e5cacbccd891de1a0c94e6eb935965a0ca75
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 917403a968bc4543237546636df2e9a8d07611c6
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 876fa25dd7e9db56ddcdf427097deb3c042f0e53
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 6e2b57ffb99348354999cc88645792e7f5885955
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 baee544e2798597f0db514c2dd71893cea9ea623
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 bbe00940ff32589d88994c7b3b56ecefbbbed2d2
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 d8aa544ccb2a39ef543c3ee228e32674c0e942ff
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 77b53f41a3213456ab60a974fbd409a1322b0a2c
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 d98d3b91494599a733124075aa01c6c81c4c1e50
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 c204b706e24458e8217a411415bd9c4c05ab0b77
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 3e7c0dce8084d4375913a2497067c24d8e2ada72
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 47d48bd3b3133638733b63b5ae4609cbbac85249
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 151f222d37b11d1118d09ca6ce482196fd59a135
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 b31184adb15578f2173324b8a73c4640c6868100
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 88694772d9615e3ce9db82f7c8c137d16dc01dd6
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 c1847fd936fbb230b22059145c566e4e3ee41bfa
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 6fe49171e7c12298ded6d0f0d9067a2eba754582
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 927bfbe36b336c24a62ff282279fae74781c3a52
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 eb97e7eec10ba6cc9137d6cbfc72c354b7087551
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 a8c0c68a7ba1184b700bd54ab9d898fa78e30c7a
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 60d8d2178d29894d30fb46d09bf9c2c2cc96fe82
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 0ba487fc429a9b1f225754b7e5d66144c98210d6
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, peg-rebase, created. v2.1.0-130-g02b9471,
Noah Lavine <=