"Strong typing vs. strong testing"
Pascal J. Bourguignon
pjb at informatimago.com
Fri Oct 1 18:07:30 CEST 2010
"BartC" <bc at freeuk.com> writes:
> "Pascal J. Bourguignon" <pjb at informatimago.com> wrote in message
> news:87zkuyjawh.fsf at kuiper.lan.informatimago.com...
>> "BartC" <bc at freeuk.com> writes:
>>> "Pascal J. Bourguignon" <pjb at informatimago.com> wrote in message
>>>> When Intel will realize that 99% of its users are running VM
>>> Which one?
>> Any implementation of a controlled environment is a virtual machine.
>> Sometimes it is explicitely defined, such as in clisp, parot or jvm, but
>> more often it is implicit, such as in sbcl, or worse, developed in an
>> ad-hoc way in applications (eg. written in C++).
> But if you had to implement a VM directly in hardware, which one (of
> the several varieties) would you choose?
> And having chosen one, how would that impact the performance of a
> language with an incompatible VM?
Indeed. C running on LispMachine, wasn't so fast. All this bit
twiddling and pointer computing... But if that could be construed as a
reason why to use dynamic languages (they run faster!) than C, it'd be
all for the best!
Otherwise we need to further go down the road of VM (cf. the hardware
virtualization stream), down to the microcode. Again, it's because of
the cheapness of microprocessors founders that we forgot for a long time
the notion of microcode, which was found more often on big irons.
Nowadays the biggest microprocessors are back on the track of microcode;
this should be open, and virtual machines should be more routinely
implemented in microcode.
> Perhaps processors executing native code as it is now, aren't such a
> bad idea.
Perhaps if they had a more controlled execution model it would be a
better idea. Remember that processors are like they are because C (and
unix) is like it is!
__Pascal Bourguignon__ http://www.informatimago.com/
More information about the Python-list