Commit Graph

21 Commits

Author SHA1 Message Date
Vincent St-Amour
5200b93a0c Fix ~literal patterns in syntax-parse. 2011-04-01 14:56:17 -04:00
Ryan Culpepper
c677932baf syntax/parse: added define/syntax-parse, like define/with-syntax 2011-04-01 02:12:30 -06:00
Ryan Culpepper
896cb86dc4 syntax/parse: added phase options to define-literal-set 2011-04-01 00:57:04 -06:00
Ryan Culpepper
bf591d4d01 syntax/parse: added #:disable-colon-notation option 2011-03-17 13:47:38 -06:00
Ryan Culpepper
012746540c syntax/parse: added define-simple-macro form (needs docs) 2011-03-17 13:47:38 -06:00
Ryan Culpepper
1353d40612 syntax/parse: allow zero syntax-parse clauses and zero syntax-class variants 2011-03-17 13:47:38 -06:00
Ryan Culpepper
b8fc41283e syntax/parse: exported and documented ~do action pattern 2010-12-09 12:19:34 -07:00
Ryan Culpepper
c51f769672 syntax/parse: vars w/ splicing-stxclasses bind stxobjs, not lists 2010-12-09 12:19:26 -07:00
Ryan Culpepper
8605fecaf3 syntax/parse: fixed bug in #:do (with expression) 2010-11-26 19:28:55 -07:00
Ryan Culpepper
a2c4574688 syntax-parse: improved error for non-syntax attribute in syntax template 2010-11-11 16:14:37 -07:00
Ryan Culpepper
553ef2834d syntax/parse: removed stx from expectstack 2010-11-03 18:09:21 -06:00
Ryan Culpepper
95d690d550 syntax/parse: pinpoint stx from progress, not expectstack 2010-11-03 18:09:21 -06:00
Ryan Culpepper
60f8d3854a syntax-parse: tidy up 2010-10-29 16:01:51 -06:00
Ryan Culpepper
c941db0bfa Added ~peek-not, cf packrat/PEG ! operator 2010-10-22 15:30:24 -06:00
Vincent St-Amour
f281abe693 Added quote-syntax to kernel-literals. 2010-10-06 17:32:29 -04:00
Ryan Culpepper
de5b110d75 added lookahead (~peek) 2010-10-04 11:54:03 -06:00
Ryan Culpepper
fff692309e removed useless requires 2010-09-03 13:53:42 -06:00
Ryan Culpepper
b572f0c7dc removed useless requires 2010-09-03 13:53:41 -06:00
Ryan Culpepper
be3ca941bb eliminated some uses of rest-args and list unpacking 2010-08-31 18:36:32 -06:00
Ryan Culpepper
6c42fe2766 changed static syntax class back to perform post-checks 2010-08-31 16:21:45 -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