Bob La Quey wrote:
Except it's still faster than a 10MHz machine doing it in 2 clock
cycles, if I'm reading properly. :-)

No it is not faster. The x86 architecture and all of those things
that emulate it are, even with twenty years improvement in
technology, still slower at handling interrupts.

OK. I read it as something like 20 or 30 cycles to respond to an interrupt on a chip clocked at 30x the speed of one that responds in 2 cycles. I might have been misinterpreting the columns, tho.

stack machines start to look very good. Why? Because using the stack
unnamed stack variables leads to very fast function calling and nesting.

Agreed. In the interests of disclosure, I've written four FORTH compilers from scratch in assembly, including on a 6502, which was a task in itself considering the 6502 has no registers big enough to hold a stack pointer.

http://www.latrobe.edu.au/philosophy/phimvt/joy/forth-joy.html

Yah, Joy is pretty cool.

So let's get over this idea that functional languages must not use stacks.
Stack machines are the natural virtual machine for functional languages.
Thus building these machines in hardware holds forth the possibilities of
significant performance improvement.

I also saw a description of a FORTH-based CPU/core/whatever that had something like 32 or 64 FORTH-based cores on one chip, all independent.

See http://www.intellasys.net/products/seaforth/index.php

Yeah, like that. I guess they productized the idea. :-)

I suspect that it would be very easy to host parallel functional
languages on this architecture.

That would be cool. I'll have to mention it to the other guy I know who is really into Haskel. Thanks for the pointer.

In my experience, FORTH is far from functional, tho. I'll have to look into Joy again.

--
  Darren New / San Diego, CA, USA (PST)
    I bet exercise equipment would be a lot more
    expensive if we had evolved from starfish.

--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to