[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] GNU Guile branch, wip-peg-fixed, created. v2.0.2-117-g02
From: |
Noah Lavine |
Subject: |
[Guile-commits] GNU Guile branch, wip-peg-fixed, created. v2.0.2-117-g02be220 |
Date: |
Tue, 06 Sep 2011 02:20: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=02be220d042a9b50675441cae5e2945e6d4f37e2
The branch, wip-peg-fixed has been created
at 02be220d042a9b50675441cae5e2945e6d4f37e2 (commit)
- Log -----------------------------------------------------------------
commit 02be220d042a9b50675441cae5e2945e6d4f37e2
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 b9b70c3cca5b8c004f9b1128373ab6f92f6e9e44
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 fface83ff71c05205a58010f715b01e64d3642a6
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 8b250a7fa06a8dcb08ed104b496d5265b1eac4ac
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 9e1c9287b0e4a81e73459b6cc2b246bb03f2d2da
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 d8c88667cbce1459dd52a11a3f754cb358501a5f
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 e3e43d6a0460e277ae3f337c6ad22343fb7d21f2
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 f1b75a66871c95d583736a7b04e9f45b28f3b07b
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 c29f65488c4cc7791e4915e73eee6fe6e3c36a41
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 9178066bc9610b2668ceca6437b1490968c138a6
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 61d98a26b3d37dc0c70d4cf98af7090a81304cff
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 d2dd5b1549dabb97bc2d7dd3dfe2de9f74fd975d
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 7db943859ec60f0438eeb34b004268db774628bd
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 3b5bde6db5810064995614f3ca6dadd685004494
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 129805a05acffb848bf0de3f41c3b8a750dba34e
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 7696cec146b0949ea398e9c3b096c4e5d699ab2f
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 758522581331861bea20c957baf447d5145e24b7
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 35d503e2d5156dddbc1868c0690d74d772130428
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 892b2bf33194c65cb0c27f66672d1c6d9fb5daf5
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 ffbb94d8e625b092502206d585bca4a715c605d6
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 43db850a8297f77033973bea613faa4b6e99e6c1
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 c8580c0ae9da9de4213e4f72894f0c6bafe44c88
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 e173c250602a2443fb02388ed67c03a958406947
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 c8c3c419bb94bb2b2f641ae58704f0851a6c03d1
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 42e66235ad6119d5b374933c0c451d66d5873982
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 d924bc8573cc02a4160aa620b104571667f44de3
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 bb0f1bef21843a7ab45d3b2f2f6bd2426e61bca5
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 471936da4ad8090273ef613c320cd31562f8fc82
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 672b2308534a269ee36c5b1839bbbe214b1bc3de
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 5b0e7099a42cc0748ff46d1f730a472b21c9e7b4
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 f2c5b6ffa1de2e5cda23fd25ab50e5add089b45f
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 253871e334b273c32ddbff7dbd7bcbbde9168171
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 7d864ca8b1643429d46b04e74788b92691a10680
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 52af189f87fd2e36bf1151d1280b495bb0eb63f9
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 ca26c25f82b18c514bad3d03007d6fb9df0d5a93
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 e6ee9563097012965c8f9aaf0dab1b1a07015d1a
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 0cca727f72c6bbc799f2b9358889f57ef4a2055d
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 9310d4039d5161438a1b21acae24893e535c7ed4
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 ec17e7a66f441aa460e10bde777944924d43402c
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 5af9e9e341b4820b42c390cc0e381507937a5619
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 a3157a1db726a784bbd699f09f34507f2ffb0522
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 0e73735ff43b1461fa9574d10d69a48129fd993f
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 bee35299ef1fcc2bc6febe70d45493b4cd5ab48a
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 bf7da53f99676f169012f87fe915e4d6a962a1d6
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 477eebeaf27ad3c447c1bba34256d042049265e9
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 ea5db99d2fff80db0153eb583f3f19a895f3eaf5
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 6328f06d0e2301fed59dd9a647d6fbb81cd382ac
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 6a8476e243545eb94b2259ac62f363f3b1d1ad61
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 5e8caa7eb0896e66cb826acd2293ec91869e61d3
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 0e3b02e419800662c0ead15790d5f846a3766194
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 eab9e1aa8d74c5b8bdb6aa28d338377a1b92b3dd
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 2a440099c352709fd9b4ec005a1a62331f253cd3
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 c9ac05d0bf665a15a97031dd5708388fb436cfad
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 deac19435f77caf02944d2289639afff28cf866e
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 63958728c67ce2d0001b4df00fddf5dc29a85063
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 42bad25b790ff604c68bcd6390903d6215dfc73e
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-fixed, created. v2.0.2-117-g02be220,
Noah Lavine <=