On Thursday, 29 March 2012 at 10:06:20 UTC, simendsjo wrote:
On Thu, 29 Mar 2012 11:47:54 +0200, ezdiy <[email protected]>
wrote:
Hello,
D syntax being C-ish one is great for oldschool class of
programmers coming C/C++/Java/C# backgrounds, and although
it's quite conscise one compared to, eg. javas, it's still
much on the overly verbose side for some people (ie. at least
for me :)
The question is, how one would go around to successfully
implement an alternative modern syntax to "fix" this. Are
there some attempts out there?
I'm talking among the lines of translators for popular
languages such as Lua (http://moonscript.org/) or Javascript
(http://coffeescript.org/). For statically typed example, take
a look at http://live.gnome.org/Genie for Vala.
My idea is something like: try to keep as much of original D
grammar as possible, but add a lot of syntactic sugar, f.e.:
- strip perceived "bloat" - by default, all variables auto,
only basics of OO (everything virtual and public..) exposed
etc...
- python's indentation blocks, instead of {}
- line decorators, such as: a = b if c
- multiple return values (either hack the compiler to have em,
or add *a lot* of boilerplate to the translator to use tuples)
- your ideas?
Another issue is how to go around implementation. My bet is to
start with some already existing 1:1 D translator which has an
actual AST state (is there something like that?) and then try
to retrofit it with as much of the hipster stuff until things
start to get overly ambiguous :)
http://delight.sourceforge.net/
dang, i fail at google once again. thanks!