On Monday, 25 August 2014 at 14:54:33 UTC, ketmar via
Digitalmars-d wrote:
On Mon, 25 Aug 2014 14:41:46 +0000
via Digitalmars-d <[email protected]> wrote:
D does seem to lack type variables? So it is quite static in
comparison.
the problem with "overly dynamic" languages like Smalltalk (and
especially Self) is that it's insanely hard to write an
efficient
compiler which generates fast machine code. JIT compilation,
polymorphic inline caching and alot of other techniques allows
this
languages to work with "acceptable speed", but primitive C
compiler with
peephole optimizer can beat 'em easily.
D is aimed to generate efficient machine code, so it must be
"static".
we can emulate dynamic calls with AA and opDispatch, but this
will
be... not fast. ;-)
May be, but JIT were created thanks to Lisp and Smalltalk.
In Smalltalk's case, the genesis to Java Hotspot JIT, lies in
this paper,
http://dl.acm.org/citation.cfm?id=894616
--
Paulo