DWScript Just-In-Time compiler

dws-mirrorFor a couple months now, a JIT compiler has been available in the DWScript SVN for 32bits code. The JIT is meant to be transparent, that is, execution, debugging facilities and memory layouts are similar under JIT and interpretation, the only difference is the performance.

The JIT also uses a hybrid architecture, which was designed to allow developing the JIT incrementally, which directly derives from my only working on it a few hours at a time, every once in a while.
(more…)

String unification

This article deals with reference-counted String theory, it doesn’t relate to String Theory, unification of gravity with other quantum forces or canadian fashion.

Instead it deals with leveraging reference-counted String data to unify them and minimize memory usage requirements.

edit: as pointed in the comments, the usual terminology for that optimization is interning, which is a misnomer derived from an old LISP function “intern” which related to internal/external and packages.

(more…)

TIOBE isn’t the only index that needs fixing

404Worst thing in popularity is not being considered, or found.

Looks like TIOBE is not alone in differentiating Delphi and Pascal, other popularity indexes share the same issue:

More indexes I looked at didn’t show the “runners up”, only the top 5 or top 10, but they may as well have differentiated.

For lang-index, merging Pascal (rank 11) and Delphi (24), would be enough to reach rank 10, ahead of Ruby, just shy of Perl.

(more…)

Fixed TIOBE index

For some unfathomable reason, the TIOBE index distinguishes between “Pascal” and “Object Pascal”, and the “Pascal” category is seeing growth:

tiobe-pascal

So it can’t be the old classic procedural Pascal, can it? That leaves only Object Pascal dialects (FreePascal the largest, but also Oxygene and SmartPascal/DWScript). Pascal programming isn’t dead or dying.

(more…)