j2d - translating Java to D with the language machine - progress
Peri Hankey
mpah at thegreen.co.uk
Sat Apr 1 12:12:05 PST 2006
It looks now as if the 'invalid UTF character' message is a problem with
the gdc/dmd front end in the version (gdc 0.17/dmd140) that I am using.
Is this fixed in later versions of dmd? How else would a java string
'\uffff'
be translated as initialising a D language wchar variable? The following
wchar x = '\uffff';
is flagged as invalid.
Peri
Peri Hankey wrote:
> Hello - just to let you all know that the j2d java-to-D-language
> translator is now producing clean code (accepted by gdc syntax pass) for
> all the bits of of gnu classpath that I have tried, and also for the
> joeq_core part of the joeq jvm-in-java.
>
> The difficult bit starts now: getting it to produce code that is
> actually correct and works.
>
> See http://languagemachine.sourceforge.net/j2d.html
>
> === results ===
>
> j2d gdc1 gdc2 lines java
> y y n 917 java/applet/
> y y n 98944 java/awt/
> y y n 11843 java/beans/
> y y n 23187 java/io/
> y y n 33871 java/lang/
> y y n 2780 java/math/
> y y n 15173 java/net/
> y y n 13287 java/nio/
> y y n 6233 java/rmi/
> y y n 23482 java/security/
> y y n 9250 java/sql/
> y y n 11861 java/text/
> y y n 56636 java/util/
>
> j2d gdc1 gdc2 lines javax
> y y n 4081 javax/accessibility/
> y y n 7661 javax/crypto/
> y y n 14485 javax/imageio/
> y y n 138 javax/management/
> y y n 8754 javax/naming/
> y y n 4082 javax/net/
> y y n 17942 javax/print/
> y y n 1805 javax/rmi/
> y y n 8148 javax/security/
> y y n 8851 javax/sound/
> y y n 1033 javax/sql/
> y y n 205028 javax/swing/
> y y n 1049 javax/transaction/
> y y n 11274 javax/xml/
>
> j2d gdc1 gdc2 lines gnu
> y y n 12911 gnu/classpath/
> y y n 42958 gnu/CORBA/
> y y n 107506 gnu/java/
> y y n 92887 gnu/javax/
> y y n 5959 gnu/regexp/
> y y n 542 gnu/test/
> y y n 94523 gnu/xml/
>
> j2d gdc1 gdc2 lines vm
> y y n 7505 vm/reference/
>
> j2d gdc1 gdc2 lines joeq
> y y n 62 joeq/Allocator/
> y y n 8083 joeq/Class/
> y y n 385 joeq/ClassLib/
> y y n 71684 joeq/Compiler/
> y y n 1962 joeq/Interpreter/
> y y n 3303 joeq/Main/
> y y n 306 joeq/Memory/
> y y n 2246 joeq/Runtime/
> y y n 2440 joeq/Support/
> y y n 578 joeq/UTF/
> y y n 1096 joeq/Util/
>
> NB 'y?' means that the status is subject to regression tests, or that
> there are some errors which are understood. The actual code produced is
> probably wrong in many places.
>
> At present gdc compilation is failing mainly because:
>
> * gdc complains that modules in the java.lang hierarchy are importing
> themselves - the code generator needs to notice this
>
> * gdc complains "invalid UTF character \U0000ffff" for "char MAX_VALUE =
> '\uFFFF';" and similar (should be wchar or dchar?)
>
> Of course there is there is still a great deal to do. The sources (about
> 700 rules, 1100 lines) are in SVN at dsource - it's easiest to start at
>
> http://languagemachine.sourceforge.net/j2d.html
>
> Suggestions, feedback, assistance all welcome as ever.
>
> Peri
>
--
Peri Hankey mpah at thegreen.co.uk +44-1865-300740
http://languagemachine.sourceforge.net - The language machine
More information about the Digitalmars-d
mailing list