Beginner ?. Why does D suggest to learn java

Jessica Rauth via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Oct 17 07:14:05 PDT 2014


On Friday, 17 October 2014 at 08:44:00 UTC, Paulo  Pinto wrote:
> On Friday, 17 October 2014 at 01:05:37 UTC, ketmar via 
> Digitalmars-d-learn wrote:
>> On Fri, 17 Oct 2014 00:52:14 +0000
>> MachineCode via Digitalmars-d-learn 
>> <digitalmars-d-learn at puremagic.com>
>> wrote:
>>
>>> I don't understand. If at least it were C but java? why not D 
>>> itself?
>> C is *awful* as "beginner's language". never ever let people 
>> start with
>> C if you don't hate 'em.
>>
>> as for D... current version of D can be used, but with some
>> precautions. we now have excellent book by Ali. (it's great, 
>> really! i
>> believe that it must be featured on the front dlang.org page!) 
>> but java
>> has alot more books and tutorials.
>>
>> not that D is bad for beginners, it's just has a smaller 
>> userbase. and
>> all that things with "classes are reference types and structs 
>> are not",
>> "empty array is not empty array but is empty array" and so on 
>> D may be
>> confusing a little. it's good to have some CS background to 
>> understood
>> that things.
>>
>> just my cent and cent.
>
>
> Better, go with FreePascal http://www.freepascal.org/ and 
> discover all that those features that many C advocates spread 
> as being close to the machine and other C only features, aren't 
> exclusive of it.
>
> Alongside support for real modules, OO and genericity.
>
> Then with a head clean of bad C influences, jump into D.
>
>
> --
> Paulo

One of the problem when starting out with FPC resides in the fact 
that's a completely different family of language (Ada, Pascal, 
Modula vs the C family), syntax and philosophy (for example in 
the RTL).

Another one is that usually people use it in combination with 
Lazarus and as the RAD concept is no shit, people start building 
some applications very fastly. Then when they come to another 
lang. eg D or Cpp they take a big slap in the face. The fact is 
that Obj. Pascal and Delphi often give a wrong appreciation of 
its own skills and abilities.

You talk about genericity but the genericity in Object Pascal is 
currently almost inexistant and doesn't provide a good idea of 
what "template-meta-programming" is. Actually this looks more 
like a patch to the lang. and some simple things just like 
casting a generic type or global generic functions simply don't 
work at all. While D2 has been written with this idea, FPC will 
never be good with TMP. Even in the commercial version (Delphi 
XE7) they start to add some kind of patchs eg with a compiler 
instrasic which is equivalent to D "static if" (which means that 
the lang. is not designed for that at all).


More information about the Digitalmars-d-learn mailing list