Parrot-flavoured crack!

drhyde on 2002-05-08T14:44:53

Last week we had a London.pm boozing session^W^Wsocial meet. I got talking with acme about parrot, and commented that because it still lacked memory, it was somewhat limited. The done thing at the moment seems to be to use a string register as memory. But you can only use that as data memory, and split instruction/data memory is obviously a nasty arbitrary restriction on what you can do. So - and those of a delicate disposition might like to look away now - how about sanctifying the use of registers as memory, and allowing you to jump to a location in a register and start executing there. Think of the advantages! No need to bother writing any memory access code for parrot. Self-modifying code becomes more efficient, as instead of having to first figure out what the opcodes are, then write them to memory, then jump to that location, you can simply figger them out with the result, obviously, ending up in a register, and then jump to it. This will make hardware parrot processors much more efficient as register "memory" is clocked at the same high speed as the CPU and there's no need to access horribly slow memory, board design becomes far simpler through needing less glue logic, and it is an all-round good thing.