On Mar 24, 1:44=A0pm, "Jeff M." <mass...@[EMAIL PROTECTED]
> wrote:
>
> I've used Forth quite successfully in the past for a few projects. But
> I've always felt that [ANS] Forth was the wrong solution anytime I
> needed to use floating point math, do large-scale mathematics, or
> where job scheduling, multi-threading, and problem distributing across
> machines were all critical to the success of the project. That's not
> to say Forth can't do those things, just that I found myself far more
> productive - quicker - doing those things in C (or another language at
> times). And I'm very interesting in work others have done in Forth
> where those were their goals.
>
You might find some references to parallel programming at
www.ultratechnolog=
y.com.
That kind of multithreading is different from Forth's cooperative
multitasking, which for small systems is extremely useful.
What I find unique about Forth is that it's based on a model of a
virtual machine, not a formal syntax. Forth94 brought more abstraction
to the semantic description of the VM model. Naturally, the merits of
this are routinely argued about in this newsgroup. But people find all
kinds of clever ways to implement the VM and will continue to do so
far into the future.
VMs could be very useful for grid computing. The experience of large
scale token-based projects like Europay was that most applications
didn't spend much time running so it wasn't worth it to run a
sophisticated compiler to translate bytecodes to native machine code.
Bytecodes were pretty much executed in place. So if a task lands on a
node, does its thing and goes away, spending zero time on compilation
might be a lot better that Java's bytecode-to-native JIT approach. Why
spend a second compiling code that will execute for 10ms? Forth would
be a natural fit for such a VM-based approach.
I could see Forth VMs being used to spend spare CPU cycles on other
tasks in some kind of processing economy. If I could leave my computer
on overnight and have it earn a dollar in micropayments, I would do it
and millions of other people would too. As for heavy number crunching,
Forth's zero overhead compilation wouldn't be an advantage but for
those cases an analytical compiler could generate native code. It
would still fit nicely into the infractructure.
Brad


|