P
parrt
Hi Gang, sorry I seem to have pissed off the ruby gang. Never
could figure out why Ryan was mad at me. Oh well.
Sorry for lack of Ruby support. Nobody has been working on it. I
wish somebody would. Hopefully that would make you less annoyed with
ANTLR.
A couple of nits. ANTLR does do some weird stuff in the lexer, though
I did it on purpose as an expedient. That was pointed out bluntly to
me, which I appreciate. I have it on the to do list.
As for packrat etc... Turn on backtrack=true and ANTLR throttles up
from LL(1) to LL(*) to a PEG as necessary. Memoization only occurs if
you say so, either on grammar or on rule. I have plans to have ANTLR
suggest where you should memoize. Lots of cool optimzation will
happen once I finish my next book. Getting there. I worked 7 days a
week for about 4 years to get v3.0 done then the book. then more
code. now another book on DSL design patterns.
As for my attitude, most think I'm quite a nice guy. Even a few
students! I do go off the reservation a few times a year,
though. I have a few buttons that set me off related to demands
people make about my software. I work nonstop on them for free
etc... Anyhoo, not sure how I ran you guys off, but sorry. Well, not
sorry if it's "heh, dumbass why don't you have a ruby target yet"
ha!
Hopefully somebody will get the Ruby target working! Pretty cool that
the retargetable codegen works, eh? Got a guy doing emacs Lisp at the
moment, if you can believe it!
Oh, and watch for ANTLRMorph, a super cool rewrite system that lets
you speak in the concrete syntax of the language like
[stat ... expr]:
"x+0" -> "<x>"
that means "in expr in a statement, replace x+0 with x". Lots more
cool things for quick tweaks of code for which you have a grammar.
Regards from SF,
Terence
could figure out why Ryan was mad at me. Oh well.
Sorry for lack of Ruby support. Nobody has been working on it. I
wish somebody would. Hopefully that would make you less annoyed with
ANTLR.
A couple of nits. ANTLR does do some weird stuff in the lexer, though
I did it on purpose as an expedient. That was pointed out bluntly to
me, which I appreciate. I have it on the to do list.
As for packrat etc... Turn on backtrack=true and ANTLR throttles up
from LL(1) to LL(*) to a PEG as necessary. Memoization only occurs if
you say so, either on grammar or on rule. I have plans to have ANTLR
suggest where you should memoize. Lots of cool optimzation will
happen once I finish my next book. Getting there. I worked 7 days a
week for about 4 years to get v3.0 done then the book. then more
code. now another book on DSL design patterns.
As for my attitude, most think I'm quite a nice guy. Even a few
students! I do go off the reservation a few times a year,
though. I have a few buttons that set me off related to demands
people make about my software. I work nonstop on them for free
etc... Anyhoo, not sure how I ran you guys off, but sorry. Well, not
sorry if it's "heh, dumbass why don't you have a ruby target yet"
ha!
Hopefully somebody will get the Ruby target working! Pretty cool that
the retargetable codegen works, eh? Got a guy doing emacs Lisp at the
moment, if you can believe it!
Oh, and watch for ANTLRMorph, a super cool rewrite system that lets
you speak in the concrete syntax of the language like
[stat ... expr]:
"x+0" -> "<x>"
that means "in expr in a statement, replace x+0 with x". Lots more
cool things for quick tweaks of code for which you have a grammar.
Regards from SF,
Terence