On Friday, 15 November 2013 at 07:13:34 UTC, Jeremy DeHaan wrote:
Hey everyone!
I have been experimenting for the past couple of days with an
idea I had, and since I recently made a little progress I
thought I would share some of what I have been doing with you.
What I have done, in a nutshell, is began the process for a
language converter that takes D source files, converts them
into Java source files, and then compiles them as Java class
files so that they can be ran on Java's VM. It is extremely
limited in what it can do right now, only being able to
convert/compile a simple Hello World program, but I was proud
of myself for getting even that far so I wanted to brag. :P
You may want to ask, "Hey, man. D is a great language. Why
would I ever want to convert it to Java?" Normally, you
wouldn't. Java blows. What I am envisioning for this project is
something quite magical in my opinion. If we can take D code
and have it compile into Java class files, we can then compile
them into Android dex files. This would make D able to build
and run on Android devices through its VM. Sure, people are
working on getting D to compile to ARM binaries, but this could
be another option as a Java alternative on Android.(eventually)
Unfortunately I do not know much about compilers, but even in
the last couple of days I feel like I have learned a great deal
about what kinds of stuff goes into them. Eventually I'd like
to make a full blown compiler that takes D code and can go
right to dex files, but that would be something that would
happen way down the road. In order to get D working on Android
sooner, I figured a language converter would be the easier
route.
I can, and would love to go in to more detail about this, but
it is getting late and this post is already quite long. Maybe I
should start a blog about my D escapades? Anyways, I would love
to hear feedback on this idea! Thanks for your time!
It is an impossible task, because many of the D semantics cannot
be expressed in JVM/Dalvik bytecode.
--
Paulo