Commit Graph

37 Commits

Author SHA1 Message Date
Ryan Culpepper
d5fe602131 added #:datum-literals, like #:literals but for ~datum patterns 2013-01-22 21:35:53 -05:00
Ryan Culpepper
5470899d6e fix shadowing (caused unwanted state threading)
closes PR 13327
2012-12-01 11:17:13 -05:00
Ryan Culpepper
07da9c0c3c fixed template tests 2012-10-11 17:37:57 -04:00
Ryan Culpepper
008d1f7f1b syntax/parse/experimental/template: quasitemplate, template/loc 2012-09-24 13:31:03 -04:00
Ryan Culpepper
ddcafbc6d1 syntax/parse/experimental/template: fix ellipses/depth rules again 2012-09-20 12:19:51 -04:00
Ryan Culpepper
35a0e50de4 syntax/parse/experimental/template: fixed bugs, added error tests 2012-09-17 18:11:44 -04:00
Ryan Culpepper
6eb8da1f40 removed (unused) reference to not-break-exn? 2012-07-31 19:15:21 -04:00
Ryan Culpepper
e10951024f syntax/parse: fix bug in specialized code for ellipsis patterns
The result of 'stx->list' is not always either a list or #f.

Merge to 5.3.
2012-07-28 17:37:06 -04:00
Ryan Culpepper
74ca931f5a more template improvements
- loosen pattern variable depth rules (now compatible with syntax)
- generalize ?? form to head-templates
- doc improvements
- propagate paren-shape property
2012-03-21 17:48:10 -06:00
Ryan Culpepper
6c369f2563 updates to syntax/parse/experimental/template
- changed substitute to use closure-compilation
- added stress/perf test for templates
- updated minimatch with vector patterns
- split substitute into separate file, minimize dependencies
- do ellipsis optimization dynamically
- validate guides: check var indexes
2012-03-21 17:33:08 -06:00
Ryan Culpepper
fb7c7e3793 syntax/parse: added roles, other updates/fixes
expr/c uses role for contract label when avail
export ~peek-not (previously missed)
fixes for integrable stxclasses
2012-03-08 07:39:42 -07:00
Ryan Culpepper
5a1badf397 syntax/parse: added template metafunctions
Also fixed some bugs and added simple optimizations.
2012-02-10 22:12:54 -07:00
Ryan Culpepper
06979954fa syntax/parse: added experimental template form
Also added more atomic patterns to syntax-parse (previously overlooked).
2012-02-10 05:26:13 -07:00
Ryan Culpepper
e2404184ee syntax/parse: fix opaque head patterns and splicing syntax classes
closes PR 12537
2012-02-07 13:43:26 -07:00
Ryan Culpepper
1c6b8bd68e syntax/parse: lazily load most macro transformers and compile-time support 2011-09-30 04:13:09 -06:00
Ryan Culpepper
7cc1476170 syntax/parse: fix bug: integrated stxclass might not bind pvar to syntax 2011-09-21 16:58:52 -06:00
Carl Eastlund
97642c1cb6 Fixed syntax/parse bug:
Syntax classes with keyword arguments were unintentionally requiring all
arguments at an application site to be in alphabetical order.
Added a test for this fix.
2011-07-01 15:32:34 -04:00
Ryan Culpepper
c8a691490a syntax/parse: added literal-set->predicate
closes PR 11968
2011-06-10 13:22:26 -06:00
Ryan Culpepper
1bf95392d2 syntax/parse: added litset extension 2011-05-03 01:25:41 -06:00
Ryan Culpepper
e5e12ab01a syntax/parse: added define-syntax-class/specialize 2011-05-02 21:02:11 -06:00
Ryan Culpepper
bf5248e3b5 syntax/parse: changed #:declare back to "magical" scoping 2011-04-25 20:24:35 -06:00
Ryan Culpepper
fdede6f063 syntax/parse: added docs for litset #:at kw, relaxed restriction on arg 2011-04-15 14:47:29 -06:00
Ryan Culpepper
896cb86dc4 syntax/parse: added phase options to define-literal-set 2011-04-01 00:57:04 -06:00
Ryan Culpepper
2e2bc02303 syntax/parse: fixed obsolete test cases 2011-04-01 00:54:29 -06:00
Ryan Culpepper
bfb1eed2e9 updated test 2010-08-31 17:15:36 -06:00
Ryan Culpepper
712a8f60e9 updated syntax/parse/exp./splicing, updated honu use
fixed stress.rkt
2010-08-31 16:21:44 -06:00
Ryan Culpepper
d7a87c79e0 Merged changes to syntax/parse
Changed backtracking algorithm, runtime representations
    - syntax classes, ~describe no longer implicitly commit
    - ~describe no longer delimits effect of cut
  Added keyword & optional args for stxclasses
  Added ~do and #:do, ~post, ~commit and #:commit,
    ~delimit-cut and #:no-delimit-cut
  Added syntax/parse/debug, syntax/parse/experimental/*
    - expr/c for contracting macro sub-expressions
      moved from syntax/parse to syntax/parse/experimental/contract
    - syntax class reflection (~reflect, ~splicing-reflect)
    - eh-alternative-sets (~eh-var)
    - provide-syntax-class/contract
      (only for params, not attrs so far)
  Changed ~fail to not include POST progress (#:fail still does)
    old (~fail _) is now (~post (~fail _))
  Made msg argument of ~fail optional
  Removed generic "repetition constraint violated" msg
  Removed atom-in-list stxclass
  Removed unnecessary datum->syntax on cdr of pair pattern
    massive improvements to long-list microbenchmarks
  Optimization: integrable syntax classes (id, expr, keyword)
    need better measurements
  Optimization: ad hoc elimination of head/tail choice point
    for (EH ... . ()) patterns
  Added unstable/wrapc (proc version of expr/c)
2010-08-31 10:55:58 -06:00
Eli Barzilay
7b14a1f585 "Racunit" -> "Rackunit" 2010-05-17 12:07:32 -04:00
Ryan Culpepper
d0cc31b35e syntax/parse: reverted error message, fixed error test 2010-05-04 14:12:49 -06:00
Jay McCarthy
bc5cf30ebe Renaming rktunit to racunit 2010-04-30 10:57:32 -06:00
Jay McCarthy
f70ffca756 Renaming schemeunit to rktunit and adding compat layer 2010-04-29 15:00:02 -06:00
Matthew Flatt
28b4043077 rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
Ryan Culpepper
8d2f32efed syntax/parse:
fixed bug: splicing-stxclass immediately within ellipses
  added tests, docs for local-conventions

svn: r17944
2010-02-02 19:48:08 +00:00
Ryan Culpepper
ef138249f4 syntax/parse: fixed bugs (thanks samth)
Please propagate this to the release branch.

svn: r17756
2010-01-19 21:03:51 +00:00
Ryan Culpepper
0feac0f636 syntax/parse:
tweaked error selection algorithm
  added tests

svn: r16533
2009-11-04 00:31:24 +00:00
Ryan Culpepper
c7d95a21c2 syntax/parse:
dependence on scheme/match eliminated
  fail-when, etc use conditional value if syntax
  error message typos (bad tildes) fixed

svn: r16393
2009-10-20 23:17:30 +00:00
Ryan Culpepper
68667c15a6 syntax/parse: removed tests/stxclass to tests/stxparse
svn: r16098
2009-09-20 23:57:56 +00:00