Jon Rafkind
943ac799d8
[honu] add operator which creates simple lambdas
2012-11-30 11:11:11 -07:00
Jon Rafkind
5d1bb74b42
[honu] ignore braces when computing syntax result for a pattern
2012-11-30 11:11:11 -07:00
Jon Rafkind
3de9b1da74
[honu] add syntax form that is not parsed by enforest so it can contain normal racket code
2012-11-01 11:22:55 -06:00
Jon Rafkind
fb42f390c9
[honu] provide honu-syntax through the user api
2012-11-01 11:22:55 -06:00
Jon Rafkind
2984bfe8e2
[honu] remove printf
2012-11-01 11:22:55 -06:00
Jon Rafkind
dc1b34479c
[honu] move honu-syntax to syntax.rkt. allow each pattern to specify a syntax result
2012-11-01 11:22:55 -06:00
Jon Rafkind
ae15ef55b3
[honu] clean up syntax parse attributes in patterns. dont remove repeats too early from syntax
2012-11-01 11:22:55 -06:00
Jon Rafkind
d7ebe6599c
[honu] add phase{ ... }, which is like begin-for-syntax
2012-10-10 23:02:34 -06:00
Jon Rafkind
cb42b7ed6a
[honu] clean up requires by separating code into modules
2012-10-04 23:53:03 -06:00
Jon Rafkind
60f1c85207
[honu] remove context argument from macro transformers
2012-08-20 12:28:14 -06:00
Jon Rafkind
244f1cccb7
[honu] fix the pattern form and use quote-syntax to prevent syntaxes from being interpolated too early
2012-06-02 15:33:55 -06:00
Jon Rafkind
7dde37bee1
[honu] cleanup - move code to submodules
2012-06-02 15:33:54 -06:00
Jon Rafkind
52047a0474
[honu] pass the original name being defined to get the proper lexical context
2012-06-02 15:33:54 -06:00
Jon Rafkind
241f8e67b4
[honu] analyze macro parameters at phase 2. temporarily break patterns
2012-06-02 15:33:54 -06:00
Matthew Flatt
662ede2bd2
Revert "work around an internal module-instantation bug"
...
This reverts commit bd75b17a23
.
It would be fine to leave the commit as-is, but I'm reverting to
make clear (and as a backup test) that the internal bug is fixed.
2012-05-16 10:41:31 -06:00
Matthew Flatt
bd75b17a23
work around an internal module-instantation bug
...
Tracking down the bug is taking a while, so I'm pushing a workaround
for now.
2012-05-16 09:43:23 -06:00
Jon Rafkind
4799d08022
[honu] dont splice the output of a macro directly into the output
2012-04-23 17:18:12 -06:00
Jon Rafkind
9858ec72d2
[honu] allow syntax() form to accept a single term. provide some hash stuff
2012-04-20 14:08:36 -06:00
Jon Rafkind
bb57412242
[honu] check for definitions before continuing to parse. completely parse the left hand side of an operator
2012-04-20 14:08:36 -06:00
Jon Rafkind
918c87e96b
[honu] return the current expression when a semicolon is parsed
2012-03-20 11:32:46 -06:00
Jon Rafkind
249c7b02ca
[honu] use syntax properties to differentiate parsed syntax from unparsed
2012-03-05 13:48:52 -07:00
Jon Rafkind
89f511fb3e
[honu] bind all attributes from a syntax class. allow multiple expressions in a match list
2012-03-05 13:48:52 -07:00
Jon Rafkind
7379684c5b
[honu] use syntax properties to differentiate racket syntax from honu syntax instead of the %racket identifier
2012-02-21 16:19:10 -07:00
Jon Rafkind
782664316d
[honu] honu forms implemented in racket must call honu->racket on the parsed output. add an example to do ocaml style pattern matching
2012-02-21 16:19:09 -07:00
Jon Rafkind
549a7522e3
[honu] add syntactic patterns. parse the output of macros using a local define-syntax (kind of hackish)
2012-02-21 16:19:09 -07:00
Jon Rafkind
b74ad87160
[honu] wrap the condition of when expression inside parentheses. instantiate literal sets at the proper phase for honu macros
2012-02-01 16:05:41 -07:00
Jon Rafkind
1fac120cd2
[honu] move core definition of honu-syntax to another module
2012-01-26 13:32:52 -07:00
Jon Rafkind
bef2f188b3
[honu] move when macro to the honu language
2011-11-22 10:30:43 -07:00
Jon Rafkind
23cbc505cc
[honu] define parsing macro in the transformer phase. also provide a bunch of things from main
2011-11-17 23:34:59 -07:00
Jon Rafkind
70589a7033
[honu] create a new syntax class for parsing expressions at current-phase + 1. allow new operators to be defined using honu syntax
2011-11-17 23:34:59 -07:00
Jon Rafkind
9d393f991f
[honu] filter out non-pattern variables
2011-11-14 17:49:15 -07:00
Jon Rafkind
dfe33f8919
[honu] convert function bodies from honu to racket
2011-11-11 10:35:09 -07:00
Jon Rafkind
a4123ce536
[honu] rebind the result of parsing to the original pattern variable name
2011-11-11 10:35:09 -07:00
Jon Rafkind
6e3cf95e83
[honu] parse bodies of macros early. re-parse the output of macros
2011-11-10 15:55:55 -07:00
Jon Rafkind
5aa6b0b06e
[honu] dont parse the output of syntax too early. wrap some core racket forms with %racket
2011-11-09 11:17:40 -07:00
Jon Rafkind
d88b75a9b7
[honu] macros can be defined with honu syntax
2011-08-30 17:19:17 -06:00
Jon Rafkind
a7768a13a3
use #%module-begin for honu modules so top level expressions get printed
...
macros return whether they terminate parsing
2011-07-19 11:00:32 -06:00
Jon Rafkind
2737351c4a
start new honu implementation
2011-07-12 10:37:23 -06:00