To read all comments associated with this story, please click here.
You know there are so many languages these days, it's become difficult to keep track of them.
For example, I already have trouble remembering the substring functions between javascript, c, php, perl, .net, mysql, plsql... very rarely do I use others.
What does forth offer as a compelling reason to learn/use it?
It may be good, but these days languages have way too much overlap and the choice is seemingly arbitrary.
> What does forth offer as a compelling reason to learn/use it?
You didn't read anything like "Starting Forth"? OK, here you go:
Forth is fast. High-level Forth executes as fast as other high-level languages and between 20 to 75% slower than equivalent assembly-language programs, while time-critical code may be written in assembler to run at full processor speed. Without a traditional operating system, Forth eliminates redundancy and needless run-time error checking.
Forth compiled code is compact. Forth applications require less memory than their equivalent assembly-language programs and consume less power (important for hand-helds and portable gadgets!) Written in Forth, the entire operating system and its standard word set reside in less than 8K bytes. Support for a target application may require less than 1K bytes.
Forth is transportable. It has been implemented on just about every mini- and microcomputer known to the industry. Most microcontrollers and DSPs, even tiny ones, also have a Forth implementation.
Forth has been known to cut program development time by a factor of ten for equivalent assembly-language programming and by a factor of two for equivalent high-level programming in C or Java. Productivity increases because Forth epitomizes "structured programming" and because it is interactive and modular.
If you mean something "bigger" - try ForthOS ( http://www.forthos.org/ ). The "smaller things" - e.g. for microcontrollers - are obvious (CamelForth, cforth etc.), since Forth "likes to be an OS".
The biggest sense in using Forth is using it "standalone" - I mean: with NO control of any underlying "external" OS.
Oh, I forgot: http://www.openfirmware.info/Open_Firmware - here you are: "easily portable OS or kernel written in Forth; Forth suitable for writing an OS kernel for x86/x86-64 hardware" - everything you requested in just one software package.
Edited 2011-06-04 17:52 UTC





Member since:
2008-08-28
Being written in Forth, it could be more easily portable.