If memory serves me right, Nicholas Clark wrote:
> That doesn't sound right. But if it is right, then it sounds very wrong.
> 
> (Translation: Are you sure about your terms, because what you describe sounds
> wonky. Hence if they are using UTF8 but with 16 bit chars, that feels like a
> silly design decision to me. Perl 5 performance is not enjoying a variable
> length encoding, but using an 8 bit encoding in 8 bit chars at least makes
> it small in memory.)

I mean they're using UTF8 encoded strings ... and chars are 16 bit ...
which means that reading chars from strings is wonky (from all I remember,
ILString* uses int16[] for storing stuff... but the files do use UTF8)..
Actually I think the ILImage functions in Portable.net abstract out the
UTF8 reading and return int16* arrays ...

Hope that makes more sense :)

> Ooh. So what happens if I try to run:
> 
> char *a = 0;
> *a++;

Assuming you meant (*a)++; ... coz *a++; is optimsed away into just a++;
by GCC ..

> Does the VM just "segfault" the failing thread, rather than all threads in
> a process?

How does this do for an answer ?

Uncaught exception: System.NullReferenceException: The value 'null' was found where an 
instance of an object was required
        at <Module>.main() in segfault.c:3
        at <Module>..start(String[])

Bye Bye segfaults, hello exceptions ...

> Hmm. So if DotGNU has a C to Parrot compiler, then we just compile the perl5
> source code down to Parrot bytecode, et voilá, we have a perl implementation.

This is assuming we can get all the perl5 dependencies compiled to Parrot
without any issues ... (in fact this might be very,very hard... considering
the fact that parrot codegen is still commented out for most of portable.net).

> I do hope no-one wanted it to go fast. :-)
> [then again, I wonder how the parrot JIT would cope]

Which is why nobody is really interested in doing this :-) ... we're 
building the C compiler for fun ...

> So Rhys is mad:
> 
> > The difference between insanity and genius is measured by success
> 
> I hope he falls on the right side of the divide.

That's *my* sig ... and I'm attempting a cross-over :)

Gopal
-- 
The difference between insanity and genius is measured by success

Reply via email to