Translating Java into D
Alexandru Ermicioi
alexandru.ermicioi at gmail.com
Sat Nov 16 09:59:19 UTC 2019
On Friday, 15 November 2019 at 03:29:16 UTC, Heromyth wrote:
> On Thursday, 14 November 2019 at 19:50:22 UTC, NonNull wrote:
>> Greetings, Java seems to be almost a subset of D in various
>> ways.
> No, it's not exactly right. Java is more powerful than D as for
> a language. Many things that Java can do can't be done by D.
> For example, reflection, full meta info for a type in runtime,
> type deduction for a template, template member override.
>
> See:
> https://stackoverflow.com/questions/4829631/unusual-generic-syntax-arrays-stringaslist
> https://www.baeldung.com/java-executor-service-tutorial
>
>> Has there been any work done to automatically translate Java
>> source into D?
>
> We ported some projects in Java by hand.
Regarding template member override. Generics in java are mainly
compile time thing that boils down to auto generated casts when
working with generic types (in bytecode), and therefore a
templated method in java is actually a standard method that just
works with Object class under the hood, hence it is possible to
override in implementor of interface/class. It can be done in D
too you'll just need to strip out generics part in method
declaration and just use casts from root Object for worst case.
Also what do you mean by "type deduction for a template"?
Best regards,
Alexandru.
More information about the Digitalmars-d-learn
mailing list