Jon Rafkind
|
806b3072e3
|
[honu] add simple syntax-parse form. add syntax-class for delaying parsing
|
2012-06-11 13:07:54 -06:00 |
|
Jon Rafkind
|
6457e69b48
|
[honu] support for-syntax in require
|
2012-06-11 13:07:53 -06:00 |
|
Jon Rafkind
|
fc96cb258c
|
[honu] assignment operators cooperate with the dot operator
|
2012-06-11 13:07:52 -06:00 |
|
Jon Rafkind
|
40a3161570
|
[honu] always keep parsing a unary operator
|
2012-04-23 17:18:12 -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
|
c390d96780
|
[honu] only allow semicolons in expression sequence position
|
2012-04-12 12:50:44 -06:00 |
|
Jon Rafkind
|
fa8377883d
|
[honu] explicitly check for commas when parsing a comma separated expression sequence
|
2012-04-12 12:50:44 -06:00 |
|
Jon Rafkind
|
bbc806732c
|
[honu] always reparse the output of honu-expression. provide honu-comma so that it works with literal sets
|
2012-04-06 12:36:19 -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
|
a94b7b9260
|
[honu] fix some tests. always reparse the right hand side of an operator
|
2012-03-05 13:48:52 -07: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
|
4852904035
|
[honu] wrap expressions with let so local macro parsers can be defined. replace more usages of %racket with racket-syntax
|
2012-02-21 16:19:10 -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
|
bb85c06df4
|
[honu] use honu->racket in more builtin forms
|
2012-02-21 16:19:09 -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
|
54449d824c
|
[honu] use a function keyword to define procedures and make lambdas
|
2012-02-01 16:05:40 -07:00 |
|
Jon Rafkind
|
b67f5e71e6
|
[honu] add moere assignment operators
|
2012-01-26 13:32:52 -07:00 |
|
Jon Rafkind
|
7e5a0285d3
|
[honu] replace := with =
|
2012-01-26 13:32:52 -07:00 |
|
Jon Rafkind
|
d6be1fbdee
|
[honu] move operators to their own module
|
2012-01-26 13:32:52 -07:00 |
|
Jon Rafkind
|
2b6efee854
|
[honu] still need :=
|
2012-01-26 13:32:51 -07:00 |
|
Jon Rafkind
|
d7a35c1eb8
|
[honu] use = for mutation to be consistent with other uses. put where clauses of list comprehensions on the right side
|
2012-01-26 13:32:51 -07:00 |
|
Jon Rafkind
|
a1869fa2f1
|
[honu] then is optional in "if". allow multiple sequences in for. add for/fold
|
2012-01-26 13:32:51 -07:00 |
|
Jon Rafkind
|
bc30a94c72
|
[honu] allow list comprehensions to follow expressions
|
2012-01-26 13:32:50 -07:00 |
|
Jon Rafkind
|
9d11622968
|
[honu] add a filtering clause to list comprehensions
|
2012-01-18 12:34:51 -07:00 |
|
Jon Rafkind
|
6552d3f2cd
|
[honu] allow classes to accept 0 constructor parameters. add 'to' as a binary operator that creates a list of numbers
|
2012-01-18 12:34:51 -07:00 |
|
Jon Rafkind
|
a9ba721be8
|
[honu] add example of lexically scoped macros
|
2011-11-22 10:30:44 -07:00 |
|
Jon Rafkind
|
42caad96de
|
[honu] use honu-body directly in the parser
|
2011-11-22 10:30:44 -07:00 |
|
Jon Rafkind
|
4b4a369d84
|
[honu] abstract out delayed parsing
|
2011-11-22 10:30:43 -07:00 |
|
Jon Rafkind
|
973000adbb
|
[honu] delay parsing of function bodies
|
2011-11-22 10:30:43 -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
|
5cb1834376
|
[honu] redo operator parsing to fix various precedence cases. add a new quasi-operator macro that can consume as much input on the right as it wants and use that to call methods on objects. change = to equal?. allow variables to be defined in classes
|
2011-11-14 00:45:55 -07:00 |
|
Jon Rafkind
|
dfe33f8919
|
[honu] convert function bodies from honu to racket
|
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
|
6b6ca7a7c3
|
[honu] allow %racket expressions to remain inside honu syntax and remove them after parsing
|
2011-11-10 15:55:54 -07:00 |
|
Jon Rafkind
|
8fe87bd2a9
|
[honu] reparse honu expressions into racket expressions
|
2011-11-09 11:17:41 -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
|
b25406db4c
|
[honu] re-attach the output of macros to the input stream. wrap racket expressions so they dont get reparsed
|
2011-11-09 11:17:40 -07:00 |
|
Jon Rafkind
|
dccdcb0550
|
[honu] wrap expressions with a semicolon at the end of them in (%semicolon ...)
|
2011-10-23 14:06:06 -06:00 |
|
Jon Rafkind
|
b055ce9fe0
|
[honu] wrap blocks inside a definition context (with let)
|
2011-10-23 13:26:28 -06:00 |
|
Jon Rafkind
|
219516b321
|
[honu] use an empty "begin" if nothing was parsed
|
2011-09-15 16:01:54 -06:00 |
|
Jon Rafkind
|
0b4e630b8c
|
[honu] return currently parsed form if a macro is seen
|
2011-09-15 16:01:54 -06:00 |
|
Jon Rafkind
|
501efef8a1
|
[honu] dont produce an extra void expression in a block. add a for form to iterate over a list. add an example of linq with xml
|
2011-09-13 12:15:47 -06:00 |
|
Jon Rafkind
|
1650294a83
|
[honu] add simple class form. share the function parsing syntax class
|
2011-09-13 12:15:47 -06:00 |
|
Jon Rafkind
|
062a20f7e1
|
[honu] function application respects precedence so that dot can bind higher
|
2011-09-13 12:15:47 -06:00 |
|
Jon Rafkind
|
5f0a221a03
|
[honu] allow already parsed expression to pass through
|
2011-08-30 21:11:11 -06:00 |
|
Jon Rafkind
|
d88b75a9b7
|
[honu] macros can be defined with honu syntax
|
2011-08-30 17:19:17 -06:00 |
|