tag:blogger.com,1999:blog-5479191305093780981.post5353036284135037474..comments2022-02-28T11:35:44.077-08:00Comments on Lex Spoon: One place you need Java source code rather than Java byte codeLex Spoonhttp://www.blogger.com/profile/13859632965228608649noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-5479191305093780981.post-2870817953713316242009-10-12T21:11:17.645-07:002009-10-12T21:11:17.645-07:00Middle ground?
Something keeps bringing me back t...Middle ground?<br /><br />Something keeps bringing me back to the fun (actual fun!) I've had lately playing with the Parrot VM and PIR. (http://bit.ly/GqaQW) Writing a language parser that produces PIR, with the provided Parrot tools, is so easy as to border on sheer geeky joy. To me, this validates the idea of an intermediate representation language that captures important information, but isn't necessarily something you want to actually code in.<br /><br />Of course the GWT case is very different from Parrot VM in terms of needs, but PIR has convinced me that an intermediate "source-ish" representation can be a really exciting thing. And I wonder if producing a language-X to Javascript compilation couldn't someday be made as easy as the Parrot compiler toolkit. You've probably seen the 5-minute LOLCODE compiler demo: http://bit.ly/iLdyw Aaand I fully expect to watch you repeat it for GWT next May. ;-)<br /><br />As a little warm-up exercise to studying this in more detail, I've started trying to make a conceptual map of Java and Scala language constructs that actually impact optimization vs. ones that solely exist for programmer convenience. This is probably knowledge you have in cache already, but it's an eye opener for me so far! Wow. We programmers are lazy. Especially we Scala programmers.Rob Heittmanhttps://www.blogger.com/profile/04191150306365125424noreply@blogger.comtag:blogger.com,1999:blog-5479191305093780981.post-7442656761793202792009-10-11T10:23:15.399-07:002009-10-11T10:23:15.399-07:00I think source is probably the right abstraction. ...I think source is probably the right abstraction. The sarien.net folks solved the "goto" problem using switches: http://sarien.net/aboutBobhttps://www.blogger.com/profile/17659001534221131143noreply@blogger.com