Dart on JVM

151 views
Skip to first unread message

Rémi Forax

unread,
Oct 17, 2011, 4:44:29 PM10/17/11
to General Dart Discussion, jvm-la...@googlegroups.com
I'm please to announce that Dart (a small subset in fact) run on the JVM.
https://code.google.com/p/jdart

I've implemented new, constructor call (super/this), function call,
method call, assignation, return, print and
boolean, integer, double and String constants.
So helloword works !

to run it:
java -jar jdartc.jar foo.dart
generates a jar file foo.jar that can be run like this:
java -jar foo.jar

I will be please to give the commiter role to anyone that want to contribute
(don't forget that my brother is a psychopath).

R�mi
PS: jdart.jar is very big 7 megs because it also contains the Dart to JS
compiler,
I haven't taken the time to separate it from the Dart frontend.

Rémi Forax

unread,
Oct 17, 2011, 5:11:44 PM10/17/11
to Gilad Bracha, General Dart Discussion, jvm-la...@googlegroups.com
On 10/17/2011 11:04 PM, Gilad Bracha wrote:
Impressive.  I assume invokedynamic came in handy?

I've posted two examples of the bytecode generated on the site.
Yes, half of the generated instructions are invokedynamic :)

Rémi


On Mon, Oct 17, 2011 at 1:44 PM, Rémi Forax <fo...@univ-mlv.fr> wrote:
I'm please to announce that Dart (a small subset in fact) run on the JVM.
 https://code.google.com/p/jdart

I've implemented new, constructor call (super/this), function call,
method call, assignation, return, print and
boolean, integer, double and String constants.
So helloword works !

to run it:
 java -jar jdartc.jar foo.dart
generates a jar file foo.jar that can be run like this:
 java -jar foo.jar

I will be please to give the commiter role to anyone that want to contribute
(don't forget that my brother is a psychopath).

Rémi
PS: jdart.jar is very big 7 megs because it also contains the Dart to JS compiler,
 I haven't taken the time to separate it from the Dart frontend.




--
Cheers, Gilad

Chanwit Kaewkasi

unread,
Oct 17, 2011, 9:17:19 PM10/17/11
to Rémi Forax, General Dart Discussion, jvm-la...@googlegroups.com
You're fast, Remi !

Cheers,

Chanwit

On Tue, Oct 18, 2011 at 03:44, Rémi Forax <fo...@univ-mlv.fr> wrote:
> I'm please to announce that Dart (a small subset in fact) run on the JVM.
>  https://code.google.com/p/jdart
>
> I've implemented new, constructor call (super/this), function call,
> method call, assignation, return, print and
> boolean, integer, double and String constants.
> So helloword works !
>
> to run it:
>  java -jar jdartc.jar foo.dart
> generates a jar file foo.jar that can be run like this:
>  java -jar foo.jar
>
> I will be please to give the commiter role to anyone that want to contribute
> (don't forget that my brother is a psychopath).
>

> Rémi

Charles Oliver Nutter

unread,
Oct 18, 2011, 4:11:07 AM10/18/11
to jvm-la...@googlegroups.com, General Dart Discussion

I knew it wouldn't take long :) Over the weekend perhaps?

Awesome work Remi...maybe more people will start to realize what power we have in invokedynamic.

-  Charlie (mobile)

On Oct 17, 2011 3:43 PM, "Rémi Forax" <fo...@univ-mlv.fr> wrote:
I'm please to announce that Dart (a small subset in fact) run on the JVM.
 https://code.google.com/p/jdart

I've implemented new, constructor call (super/this), function call,
method call, assignation, return, print and
boolean, integer, double and String constants.
So helloword works !

to run it:
 java -jar jdartc.jar foo.dart
generates a jar file foo.jar that can be run like this:
 java -jar foo.jar

I will be please to give the commiter role to anyone that want to contribute
(don't forget that my brother is a psychopath).

Rémi

PS: jdart.jar is very big 7 megs because it also contains the Dart to JS compiler,
 I haven't taken the time to separate it from the Dart frontend.

--
You received this message because you are subscribed to the Google Groups "JVM Languages" group.
To post to this group, send email to jvm-la...@googlegroups.com.
To unsubscribe from this group, send email to jvm-languages+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/jvm-languages?hl=en.

Rémi Forax

unread,
Oct 18, 2011, 4:22:45 AM10/18/11
to jvm-la...@googlegroups.com, General Dart Discussion
On 10/18/2011 10:11 AM, Charles Oliver Nutter wrote:
>
> I knew it wouldn't take long :) Over the weekend perhaps?
>

Friday night and Sunday night indeed.

> Awesome work Remi...maybe more people will start to realize what power
> we have in invokedynamic.
>

shh, I prefer to think I'm awesome :)
invokedynamic() => merge(swiss_knife, ligth_saber);

> - Charlie (mobile)
>

R�mi

James Abley

unread,
Oct 18, 2011, 4:24:00 AM10/18/11
to jvm-la...@googlegroups.com, General Dart Discussion

Rémi


--
You received this message because you are subscribed to the Google Groups "JVM Languages" group.
To post to this group, send email to jvm-la...@googlegroups.com.
To unsubscribe from this group, send email to jvm-languages+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/jvm-languages?hl=en.


Rémi,

I like your nullable choice. Are you planning to take that discussion forward?

Cheers,

James

arul

unread,
Oct 17, 2011, 9:46:39 PM10/17/11
to Rémi Forax, General Dart Discussion, jvm-la...@googlegroups.com
You rock in Dart world too! Can't wait to try this out on the JVM.

On Mon, Oct 17, 2011 at 2:44 PM, Rémi Forax <fo...@univ-mlv.fr> wrote:
I'm please to announce that Dart (a small subset in fact) run on the JVM.
 https://code.google.com/p/jdart

I've implemented new, constructor call (super/this), function call,
method call, assignation, return, print and
boolean, integer, double and String constants.
So helloword works !

to run it:
 java -jar jdartc.jar foo.dart
generates a jar file foo.jar that can be run like this:
 java -jar foo.jar

I will be please to give the commiter role to anyone that want to contribute
(don't forget that my brother is a psychopath).

Rémi
PS: jdart.jar is very big 7 megs because it also contains the Dart to JS compiler,
 I haven't taken the time to separate it from the Dart frontend.




--
Arul
http://expertstalk.org
@dartdeveloper

Olivier Lefevre

unread,
Nov 9, 2011, 8:54:17 PM11/9/11
to jvm-la...@googlegroups.com, Rémi Forax
On 10/18/2011 10:22 AM, R�mi Forax wrote:
>> Awesome work Remi...maybe more people will start to realize what power we have in invokedynamic.
>
> shh, I prefer to think I'm awesome :)
> invokedynamic() => merge(swiss_knife, ligth_saber);

So, is it invokedynamic that made such a fast turnaround possible or your own considerable
experience with language implementation on the JVM (this must be your 3rd or 4th)?

Regards,

-- O.L.

Olivier Lefevre

unread,
Nov 9, 2011, 8:55:56 PM11/9/11
to jvm-la...@googlegroups.com
On 10/18/2011 10:22 AM, R�mi Forax wrote:
>> Awesome work Remi...maybe more people will start to realize what power we have in invokedynamic.
>
> shh, I prefer to think I'm awesome :)
> invokedynamic() => merge(swiss_knife, ligth_saber);

So, is it invokedynamic that made such a fast turnaround possible or your own considerable

Reply all
Reply to author
Forward
0 new messages