Using D

via Digitalmars-d digitalmars-d at puremagic.com
Mon Aug 25 07:41:46 PDT 2014


On Monday, 25 August 2014 at 14:27:55 UTC, ketmar via 
Digitalmars-d wrote:
> On Mon, 25 Aug 2014 14:15:09 +0000
> via Digitalmars-d <digitalmars-d at puremagic.com> wrote:
>
>> C++ is using the OOP model of SIMULA, which did invent OOP! So 
>> I'd say the way C++ does OOP is how it was invented.
> and Smalltalk does OOP the way it should be done. ;-)

I haven't used Smalltalk, but can't say it looks pretty… But I 
probably shouldn't judge by looks, it is the personality that 
counts!

The SIMULA model was later refined in Beta which was minimalistic 
in the same vein as Self. In Beta everything is an object, even 
functions and blocks (which could be specialized). And virtual 
functions are evaluated from superclasses down to subclasses so 
that the superclass is encapsulating the subclass in a similar 
way to how the "with" statement works.

Beta had virtual class definitions and type variables so that you 
could let a subclass specialize the types that was instantiated 
in the superclass in a subclass.

D does seem to lack type variables? So it is quite static in 
comparison.


More information about the Digitalmars-d mailing list