Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

how can forth compete with lisp

754 views
Skip to first unread message

endlessboo...@gmail.com

unread,
Jul 26, 2016, 12:43:45 PM7/26/16
to
lisp seems to have better abstraction!

menti...@gmail.com

unread,
Jul 27, 2016, 8:40:31 AM7/27/16
to
On Tuesday, July 26, 2016 at 9:43:45 AM UTC-7, endlessboo...@gmail.com wrote:
> lisp seems to have better abstraction!

Lisp never seems to get around to creating True AI;
whereas Forth has been at the forefront of True AI
for 20 years, since Sgt. Pepper told the band to play.

In 2016 I have been porting the MindForth AI into Perl.

http://github.com/PriorArt/AGI was created on 13 July 2016.

http://github.com/PriorArt/AGI/blob/master/ghost.pl

is a Perl AI which I am porting back into Win32Forth.

http://github.com/PriorArt/AGI/wiki/MindGrid

graphically shows a kind of AI breakthrough,
where the AI Mind can learn and remember things
about itself and engage in self-referential thought.

For me it was very frustrating to achieve the
AI breakthrough in Perl and not in Forth,
because self-knowledge by the AI verges on
artificial consciousness, but the Perl AI
needs to stop after every AI thought and
wait for human input. Not so in Forth all-mighty!

http://ai.neocities.org/forthagi.txt

is where I have just now, during this posting,
uploaded the incipient new Forth AGI code so
that our beloved community of gentlemanly and
one lady-like Forth coders may view the new
Artificial General Intelligence (AGI) program.

Bye for now,

Mentifex (Arthur)
--
http://ai.neocities.org/AiSteps.html
http://www.amazon.com/dp/B00GX2B8F0
http://dl.acm.org/citation.cfm?doid=307824.307853
http://www.advogato.org/person/mentifex/diary/101.html

endlessboo...@gmail.com

unread,
Aug 13, 2016, 1:01:56 PM8/13/16
to
On Tuesday, July 26, 2016 at 12:43:45 PM UTC-4, endlessboo...@gmail.com wrote:
> lisp seems to have better abstraction!

silence here

uh oh

is lisp better?

I wonder sometimes.

Which is best?

let over lambda book says lisp is ultimate programming lang

Pablo Hugo Reda

unread,
Aug 13, 2016, 1:24:26 PM8/13/16
to
a languague not make a program, a programer do

not have sense talk about diferent programing languagues, the only important thing is know how resolve a problem, not the tool.

you not like forth, ok, move to other group.

You have a question about forth?, then ask here,if you have luck some respond.


JUERGEN

unread,
Aug 13, 2016, 2:25:43 PM8/13/16
to
Thanks Pablo, brilliant answer.
It seems so simple: Forth Group Forth Questions Forth Answers.
If you are a hammer everything looks like a nail.
Sometimnes works sometimes not.

foxaudio...@gmail.com

unread,
Aug 13, 2016, 2:47:34 PM8/13/16
to
From anecdotes I read many years ago (Byte magazine maybe?) LISP has been
responsible for some successes much like Forth has been. The interactive
environment allows high productivity and the ability to extend language is
similar to Forth and arguably you begin the extending at a higher level.

So Pablo's answer is correct. Pick the tool for the job.

I would like to add that the things that make LISP a good tool are mirrored in
many ways in Forth. Forth being the better choice if close to hardware access
is required IMHO.

I also find it remarkable that many modern languages have ignored the
interactive paradigm despite the productivity gains it seems to bring.

Micro Python might be an exception however.

BF

JUERGEN

unread,
Aug 13, 2016, 3:17:52 PM8/13/16
to
All languages have their plusses and minusses - and are optimized for certain applications - otherwise they would not exist.
The only exception it seems is Forth, as there is no predefined box - write your own compiler in an afternoon as it is said.
There are assemblers per processor
Forth goes one level up and adds an environment - at least MPE and Forth INC do.
Libraries that make it easier to speed up designs seem to be required to add another level.
Large applications have done it for their requirements but an SLI - a Standard Library Interface would help - and here I exclude the people who want it their own way.
It seems that MPE offers one way to add existing C Libraries to Forth using SockPuppet.
Only if there is a market - means Money there will be Forth Libraries - please correct me if I am wrong.

Paul Rubin

unread,
Aug 13, 2016, 3:40:01 PM8/13/16
to
foxaudio...@gmail.com writes:
> Micro Python might be an exception however.

Regular Python is also interactive.

JUERGEN

unread,
Aug 13, 2016, 4:08:38 PM8/13/16
to
Thanks Paul, I will have to get the basics then.
In another thread I started, I tried to find a basic Forth under MicroPython

As Bernd said:
Minimum Word Set
How many primitives does a Forth need to get started?
Surprisingly few, as you can see with Gforth EC,
which provides a high-level definition for almost every primitive.
But beware! If you omit too much, you risk circular behaviour (loops).
We need in any case:
:dodoes as generalized entry point for all high-level definitions, or
Call for primitive-centric implementations.
@ and ! to access the memory.
>R and
R> for the return stack, so anything can be moved.
+ or
2* for Artihmetik. And
NAND as a universal bit instruction.
?BRANCH or
0= for branches. And finally
;S and
EXECUTE for execution.
Everything else can be defined from these words, even if it then needs temporary variables:
: lit' r> @ ;
: cell lit' [ 2 , ] ; \ oder 4 oder 8 ...
: tmp1 lit' [ here cell+ , 0 , ] ;
: dup tmp1 ! tmp1 @ tmp1 @ ;
: lit r> dup cell + >r @ ;
By Bernd Paysan

Having this in MicroPython should allow to have a complete GFORTH run under MicroPython.
How effective - is it fast enough to play with is my question?
Faster just needs either dev. time or HW cost and the usage will dictate it.

Paul Rubin

unread,
Aug 13, 2016, 4:58:18 PM8/13/16
to
JUERGEN <epld...@aol.com> writes:
> In another thread I started, I tried to find a basic Forth under
> MicroPython

I sort of remember that, but I don't see any point in implementing Forth
in Python. The idea of Forth is to get an interactive language from
very little machine resources, that is capable of realtime operation,
and is pretty fast for an interpreted language and that can also be made
very fast with an optimizing compiler. The cost of this is quite a bit
of programmer inconvenience in dealing with the stack, memory
management, lack of compiler and runtime automatic error checking, etc.

Python has lots of such conveniences, but the cost is that it's much
slower than Forth, uses much more memory, is not realtime (uses
automatic storage reclamation or garbage collection), etc. By
implementing Forth in Python, you get both the inconvenience and the
high resource consumption and slow speed.

> Having this in MicroPython should allow to have a complete GFORTH run
> under MicroPython.

Gforth is written in C and you have to compile it with a C compiler.
Python doesn't come into it. In principle you could write a Forth in
Python but there's little to be gained from that.

> How effective - is it fast enough to play with is my question?

MicroPython is more than fast enough to play with. Maybe it's 10x
slower than Forth on the same hardware. On the other hand, current
hardware at least 100x faster than the 1980s computers from Forth's
heyday, so if you're used to running Forth on those, Python will seem
10x faster, if that makes any sense.

If you implemented Forth in Python straightforwardly, maybe you'd get a
10x slowdown, so you're back to the original speed of Forth on old
computers.

If you type "Maple Mini" into ebay, you should see lots of cheap boards
(like 5 euros or less) with the old Leaf design, which is a Cortex M3
with 128k of flash and 20k of ram, at something like 80 mhz. That
should be enough to run small Micropython programs, though you probably
want more ram for bigger programs.

The Micropython PyBoard is much nicer and comes with Micropython already
installed, though it's fairly expensive (45 USD over here). You can
play with one online, typing Micropython commands into your browser to
watch the board control a servo and some leds:

http://micropython.org/live/

JUERGEN

unread,
Aug 14, 2016, 3:32:20 AM8/14/16
to
Thanks Paul.
I was hoping there would be a way to use this minimum word set and the rest on top would be in Forth - eForth I think uses 32.
I wonder when Forth will be online with the same or similar HW to play with it.
Even just a SW version.
Just the usual excuse: Here it is educational and understanding only - speed is not, cost is of high importance. If then interested - there are loads of other and better resources but the first steps done and hooked?

Paul Rubin

unread,
Aug 18, 2016, 7:11:54 PM8/18/16
to
JUERGEN <epld...@aol.com> writes:
>> http://micropython.org/live/
> I wonder when Forth will be online with the same or similar HW to play
> with it. Even just a SW version.

There's a browser-based javascript one here:

https://brendanator.github.io/jsForth/

For a while Mikael Nordman (iirc) had some small embedded boards running
Flashforth online so people could telnet into them and play with them.
But they didn't have webcams.

Maybe you are elected!

JUERGEN

unread,
Aug 19, 2016, 9:45:18 AM8/19/16
to
.s -> word not defined
words -> word not defined
this is when I stopped

Forth online 2001 from 15 years ago -> http://forth.org/svfig/online.html
It seems there is little interest from the Forth and from the User side for such an application - but there is VFX on my PC which does what I need.

WJ

unread,
Aug 19, 2016, 8:41:09 PM8/19/16
to
Paul Rubin wrote:

> JUERGEN <epld...@aol.com> writes:
> > In another thread I started, I tried to find a basic Forth under
> > MicroPython
>
> I sort of remember that, but I don't see any point in implementing Forth
> in Python.

The point is that worshippers of ANS Forth are incapable of learning
another language, such as Python or Ruby or OCaml.

A "mind" that is incapable of learning isn't much of a mind.

They stick with a stone-age language because they are bone-headed.

rickman

unread,
Aug 20, 2016, 12:26:45 PM8/20/16
to
It's always lovely to hear from you WJ. Thanks for your contribution.
I'm sure everyone appreciates your efforts and patience with the rest of
us.

--

Rick C

Pablo Hugo Reda

unread,
Aug 21, 2016, 9:17:22 PM8/21/16
to
It's always lovely to hear from you WJ. Thanks for your contribution.
I'm sure everyone know about you limitation in forth coding.
Get a better job, make cakes, you can be happy too.

Bill Zimmerly

unread,
Sep 16, 2016, 12:19:05 AM9/16/16
to
On Saturday, August 13, 2016 at 3:08:38 PM UTC-5, JUERGEN wrote:
> As Bernd said:
> Minimum Word Set
> How many primitives does a Forth need to get started?
> Surprisingly few, as you can see with Gforth EC,
> which provides a high-level definition for almost every primitive.

JUERGEN, what is "Gforth EC?"

Thanks in advance,
- Bill

Bill Zimmerly

unread,
Sep 16, 2016, 1:40:45 AM9/16/16
to
Ah! I think I found it ... EC stands for "Embedded Controller."

Anton Ertl

unread,
Sep 16, 2016, 5:07:15 AM9/16/16
to
It's the embedded control variant of Gforth. It uses primitives
written in assembly, primitive replacements written in Forth, and for
the rest of the system there are lots of options to disable things
that rely on stuff that is only available on bigger platforms. It is
also mostly undocumented, and much of the documentation that exists is
in German, in particular
<http://wiki.forth-ev.de/doku.php/projects:r8c:r8c_forth>.

- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2016: http://www.euroforth.org/ef16/

JUERGEN

unread,
Sep 16, 2016, 1:00:21 PM9/16/16
to
You all might prefer for GForth EC the Rest Of The World Version http://wiki.forth-ev.de/doku.php/en:projects:r8c:r8c_forth as far as available ..

Bill Zimmerly

unread,
Sep 17, 2016, 10:18:37 AM9/17/16
to
Thanks Anton and JUERGEN!

polymorph self

unread,
Sep 23, 2016, 6:55:10 PM9/23/16
to
I do like forth.
I wish Jeff Fox had written more books.
4os looked impressive.
I want to use a forth powered pc to surf the net with firefox or something better in 1% the code!

lawren...@gmail.com

unread,
Sep 23, 2016, 9:39:39 PM9/23/16
to
On Saturday, September 24, 2016 at 10:55:10 AM UTC+12, polymorph self wrote:
> I want to use a forth powered pc to surf the net with firefox or something
> better in 1% the code!

If it could be done in 1% of the code, it could be done by a single person. Or maybe a small team.

Since this has never been done in the decades since the birth of the WWW, it seems reasonable to conclude it cannot be done.

polymorph self

unread,
Sep 23, 2016, 11:20:32 PM9/23/16
to
but colorforth

Elizabeth D. Rather

unread,
Sep 24, 2016, 12:46:23 AM9/24/16
to
It's do-able, certainly, but the problem is that it is still a big job,
and there's not been a sufficient economic incentive for a person or
team to make the effort.

Cheers,
Elizabeth

--
==================================================
Elizabeth D. Rather (US & Canada) 800-55-FORTH
FORTH Inc. +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

"Forth-based products and Services for real-time
applications since 1973."
==================================================

lawren...@gmail.com

unread,
Sep 24, 2016, 1:16:40 AM9/24/16
to
On Saturday, September 24, 2016 at 4:46:23 PM UTC+12, Elizabeth D. Rather wrote:
> On 9/23/16 3:39 PM, Lawrence D’Oliveiro wrote:
>> On Saturday, September 24, 2016 at 10:55:10 AM UTC+12, polymorph self wrote:
>>> I want to use a forth powered pc to surf the net with firefox or something
>>> better in 1% the code!
> >
>> If it could be done in 1% of the code, it could be done by a single person.
>> Or maybe a small team.
>>
>> Since this has never been done in the decades since the birth of the WWW,
>> it seems reasonable to conclude it cannot be done.
>
> It's do-able, certainly, but the problem is that it is still a big job,
> and there's not been a sufficient economic incentive for a person or
> team to make the effort.

What was the “economic incentive” behind the creation of KDE (including Konqueror, which was based on KHTML, which became the foundation of WebKit)? Behind the founding of Mozilla, the creation of Firefox? The GNOME project, including Epiphany? Galeon?

If a Forth-based browser could be done with 1% of the effort of any of these projects, it would have been done already.

Julian Fondren

unread,
Sep 24, 2016, 1:40:26 AM9/24/16
to
On Saturday, September 24, 2016 at 12:16:40 AM UTC-5, lawren...@gmail.com wrote:
> [...]

In all my life, I've never skateboarded. Therefore: it is probably
impossible for me to skateboard. I've never been to Australia.
Would I be %200 happier in Australia? That's impossible: if I could
find such happiness there, I would've already gone there.

We don't your spam in addition to gavino's.

polymorph self

unread,
Sep 24, 2016, 3:07:49 AM9/24/16
to
shut the fuck up you moron

polymorph self

unread,
Sep 24, 2016, 3:08:21 AM9/24/16
to
hmmm

I guess its a fun fantasy of mine.

polymorph self

unread,
Sep 24, 2016, 3:11:07 AM9/24/16
to

polymorph self

unread,
Sep 24, 2016, 3:13:56 AM9/24/16
to
icewm is better than kde or gnome
firefox is nice with ublock and custom tab width plugs

Elizabeth D. Rather

unread,
Sep 24, 2016, 3:16:03 AM9/24/16
to
Sorry, not familiar with any of those, so can't respond to that. If a
Forth expert had been interested in web browsers when Mozilla was
founded, things might have been different. But nowadays browser
technology has become incredibly complex, and although it's now possible
to do some application-specific web-based stuff in Forth (and I know
some people who do), a fully viable web browser would be a considerable
undertaking, and as the field is already pretty crowded, probably not
financially viable.

lawren...@gmail.com

unread,
Sep 24, 2016, 3:47:57 AM9/24/16
to
On Saturday, September 24, 2016 at 7:16:03 PM UTC+12, Elizabeth D. Rather wrote:
> Sorry, not familiar with any of those ...

You don’t have to be. They are all much larger projects than anything I know of that has been published in Forth.

> But nowadays browser technology has become incredibly complex ...

Doesn’t stop people creating new ones. Both Google Chrome/Chromium and Apple Safari date from this century, you know.

And can’t Forth do it with 1% of the effort? Seems not.

More than that, does Forth seem to appeal to the loners, those who don’t work well on collaborative projects? Which is why it never gets used for anything large...

Elizabeth D. Rather

unread,
Sep 24, 2016, 4:19:03 AM9/24/16
to
On 9/23/16 9:47 PM, lawren...@gmail.com wrote:
> On Saturday, September 24, 2016 at 7:16:03 PM UTC+12, Elizabeth D. Rather wrote:
>> Sorry, not familiar with any of those ...
>
> You don’t have to be. They are all much larger projects than anything I know of that has been published in Forth.

The largest Forth projects I know of were never published and never will
be. They are either proprietary or highly secure. The vast majority of
computer projects are never published.

>> But nowadays browser technology has become incredibly complex ...
>
> Doesn’t stop people creating new ones. Both Google Chrome/Chromium and Apple Safari date from this century, you know.

True. Who paid for them? Someone. They were not volunteer efforts. To
date, no one has expressed willingness to fund a Forth effort.

> And can’t Forth do it with 1% of the effort? Seems not.

It probably could, but that prospect has not been sufficiently appealing
to anyone with the capability of funding it.

> More than that, does Forth seem to appeal to the loners, those who don’t work well on collaborative projects? Which is why it never gets used for anything large...

I spent 35 years working on collaborative Forth projects, many of which
were large and successful, but not widely publicized. That is the tragedy.

Bernd Paysan

unread,
Sep 24, 2016, 5:27:36 PM9/24/16
to
Am Fri, 16 Sep 2016 09:03:12 +0000 schrieb Anton Ertl:

> Bill Zimmerly <billzi...@gmail.com> writes:
>>On Saturday, August 13, 2016 at 3:08:38 PM UTC-5, JUERGEN wrote:
>>> As Bernd said:
>>> Minimum Word Set How many primitives does a Forth need to get started?
>>> Surprisingly few, as you can see with Gforth EC,
>>> which provides a high-level definition for almost every primitive.
>>
>>JUERGEN, what is "Gforth EC?"
>
> It's the embedded control variant of Gforth. It uses primitives written
> in assembly, primitive replacements written in Forth, and for the rest
> of the system there are lots of options to disable things that rely on
> stuff that is only available on bigger platforms. It is also mostly
> undocumented, and much of the documentation that exists is in German, in
> particular <http://wiki.forth-ev.de/doku.php/projects:r8c:r8c_forth>.

English translation of that page (a bit less than the German page):
--
Bernd Paysan
"If you want it done right, you have to do it yourself"
net2o ID: kQusJzA;7*?t=uy@X}1GWr!+0qqp_Cn176t4(dQ*
http://bernd-paysan.de/

lawren...@gmail.com

unread,
Sep 24, 2016, 10:26:19 PM9/24/16
to
On Saturday, September 24, 2016 at 8:19:03 PM UTC+12, Elizabeth D. Rather wrote:
> The largest Forth projects I know of were never published and never will
> be. They are either proprietary or highly secure. The vast majority of
> computer projects are never published.

And yet there seems to be a peculiar absence of Forth from the Free Software world. Have you ever worked on anything as large as the Linux kernel? That’s currently up to 20 million lines of source code, with something like 1000 active contributors, and can manage a major new stable release every few months. It is probably the most successful and productive single software project in history.

> Who paid for them? Someone. They were not volunteer efforts.

Most of the projects I mentioned were indeed volunteer efforts.

>> More than that, does Forth seem to appeal to the loners, those who don’t
>> work well on collaborative projects? Which is why it never gets used for
>> anything large...

> I spent 35 years working on collaborative Forth projects, many of which
> were large and successful, but not widely publicized. That is the tragedy.

Lots of companies have discovered that they can lower development costs by open-sourcing what were originally in-house projects. How come that never seems to apply to anything done in Forth?

Elizabeth D. Rather

unread,
Sep 25, 2016, 3:31:03 AM9/25/16
to
Dunno. It was the option of the companies we were working for. But in
most cases, these were specific programs that ran only on the companies'
proprietary hardware, so "open sourcing" wasn't really practical.

lawren...@gmail.com

unread,
Sep 25, 2016, 4:53:22 PM9/25/16
to
On Sunday, September 25, 2016 at 8:31:03 PM UTC+13, Elizabeth D. Rather wrote:
> ... in most cases, these were specific programs that ran only on the
> companies' proprietary hardware ...

Ah, that explains a lot of things.

Is there any move toward more standardized hardware nowadays? Arduino, ARM? RISC-V <http://phoronix.com/scan.php?page=news_item&px=Fedora-RISC-V-Bootable-IMG>?

Paul Rubin

unread,
Sep 25, 2016, 4:59:34 PM9/25/16
to
lawren...@gmail.com writes:
>> companies' proprietary hardware ...
> Is there any move toward more standardized hardware nowadays? Arduino,
> ARM? RISC-V

I read proprietary hardware as meaning a hardware product containing a
normal microprocessor, not a special cpu architecture.

lawren...@gmail.com

unread,
Sep 25, 2016, 8:38:03 PM9/25/16
to
On Monday, September 26, 2016 at 9:59:34 AM UTC+13, Paul Rubin wrote:
> I read proprietary hardware as meaning a hardware product containing a
> normal microprocessor, not a special cpu architecture.

In that case, the code should be reusable across other SoCs using the same processor family.

Elizabeth D. Rather

unread,
Sep 25, 2016, 8:43:23 PM9/25/16
to
Exactly. Here's a good example: Radeus Labs Model 8200 Antenna Control
Unit http://www.radeuslabs.com/brochure/RL8200_Brochure.pdf.

The software interfaces with hardware controllers and limit switches in
order to position the antenna precisely, as it locates and tracks
user-specified satellites in earth orbit and adjusts for optimal signal
quality. We developed the user interface for the antenna controls. A
touchscreen display provides direct access to everything needed to
identify and track satellites. Hardware jog buttons can also be used to
position an antenna manually.

Leon Wagner created an antenna-setup wizard that is, according to
Radeus, the first of its kind in satellite communications. It simplifies
the process of configuring a new installation or re-tuning it after site
maintenance. Of course, the software that locates and tracks a satellite
in orbit is the core of the system and its raison d’être. Like the
user-face, it was developed using SwiftForth and SwiftX.

Paul Rubin

unread,
Sep 25, 2016, 8:54:38 PM9/25/16
to
lawren...@gmail.com writes:
>> hardware product containing a normal microprocessor
> In that case, the code should be reusable across other SoCs using the
> same processor family.

Sure, that's not the issue though. The product is some kind of lab
instrument or satellite radio or whatever, full of unique circuitry and
sensors with their own quirks, and the software has to run all that
stuff. Most of the code will be specific to that surrounding hardware,
and would be useless for most anything else. The CPU architecture
doesn't come into it that much.

The other thing is, both in the present-day hardware world and in the
software world in the "peak Forth" era (1980s?), releasing source code
was an unusual thing to do unless you were in academia. The FOSS
movement didn't take off in a big way til somewhat later.

jim

unread,
Sep 26, 2016, 9:54:27 AM9/26/16
to
In article <qcGdnX7N65C78nXK...@supernews.com>,
era...@forth.com says...
> ...
> Like the
> user-face, it was developed using SwiftForth and SwiftX.

... Why?



Elizabeth D. Rather

unread,
Sep 26, 2016, 8:02:41 PM9/26/16
to
Because FORTH, Inc. was hired to do the project that way.

jim

unread,
Sep 27, 2016, 6:17:11 AM9/27/16
to
In article <0oSdncYZpp6GKnTK...@supernews.com>,
era...@forth.com says...
>
> On 9/26/16 3:53 AM, jim wrote:
> > In article <qcGdnX7N65C78nXK...@supernews.com>,
> > era...@forth.com says...
> >> ...
> >> Like the
> >> user-face, it was developed using SwiftForth and SwiftX.
> >
> > ... Why?
>
> Because FORTH, Inc. was hired to do the project that way.
>
> Cheers,
> Elizabeth


Yes ... but why forth?

Elizabeth D. Rather

unread,
Sep 27, 2016, 4:28:51 PM9/27/16
to
All of the usual reasons: fast development time, compact code, easy
ongoing maintenance. Companies that get estimates for development costs
using Forth vs. C or whatever typically find that Forth development will
take about 1/4 of the time, with commensurate reduction in development
costs.

This assumes, of course, that the person doing the estimating is already
professionally skilled in the language in question. Companies
considering using Forth for the first time commonly hire Forth
professionals to do the first project and, in parallel, train local
programmers in Forth to provide ongoing maintenance as needed.

jim

unread,
Sep 28, 2016, 6:42:34 AM9/28/16
to
In article <NI6dnbysTJ_jS3fK...@supernews.com>,
era...@forth.com says...
>
>
> All of the usual reasons: fast development time, compact code, easy
> ongoing maintenance. Companies that get estimates for development costs
> using Forth vs. C or whatever typically find that Forth development will
> take about 1/4 of the time, with commensurate reduction in development
> costs.
>
Yes Elizabeth ... All of the usual reasons is the oft quoted response.
What I'm trying to get at is what evaluations did they do - what comparisons
and what systems analysis convinced them to use Forth as opposed to anything
else?

Why did they think they could do it in 1/4 of the time - have they produced
or even done anything to justify that? Why did they choose you over
say Steven at MPE - and so on.

Or is it more likely they just went with the myths because someone there
is a forth fan?

Wouldn't it be helpful to you to have such information on your web site?

Albert van der Horst

unread,
Sep 28, 2016, 7:19:01 AM9/28/16
to
In article <MPG.3255aea2d...@news.virginmedia.com>,
jim <an...@example.com> wrote:
>In article <NI6dnbysTJ_jS3fK...@supernews.com>,
>era...@forth.com says...
>>
>>
>> All of the usual reasons: fast development time, compact code, easy
>> ongoing maintenance. Companies that get estimates for development costs
>> using Forth vs. C or whatever typically find that Forth development will
>> take about 1/4 of the time, with commensurate reduction in development
>> costs.
>>
>Yes Elizabeth ... All of the usual reasons is the oft quoted response.
>What I'm trying to get at is what evaluations did they do - what comparisons
>and what systems analysis convinced them to use Forth as opposed to anything
>else?
>
>Why did they think they could do it in 1/4 of the time - have they produced
>or even done anything to justify that? Why did they choose you over
>say Steven at MPE - and so on.

Of course not. Elizabeth was good friends with a very non-knowledgeable
manager that she knew from the golf course. After a lot of fancy diners
payed by her, the inapt manager forced Forth down the throat of
his poor technicians, who despite the odds succeeded in making an excellent
product. ;-)

Groetjes Albert
--
Albert van der Horst, UTRECHT,THE NETHERLANDS
Economic growth -- being exponential -- ultimately falters.
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

Stephen Pelc

unread,
Sep 28, 2016, 7:33:05 AM9/28/16
to
On Wed, 28 Sep 2016 11:41:27 +0100, jim <an...@example.com> wrote:

>Why did they think they could do it in 1/4 of the time - have they produced
>or even done anything to justify that? Why did they choose you over
>say Steven at MPE - and so on.

I suspect that you want numbers. But, and it's a big but, who
has a successful project rewritten in another language just
to satisfy curiosity? I have only seen this once, when Europay
had the 8051 OTA kernel rewritten in C because (even then in
the 1990s), C was more fashionable than Forth. The programmer
who undertook the rewrite was a really good C programmer - he
was MPE's goto C programmer and C compiler writer. Where the
8051 Forth kernel fitted perfectly, the C version broke the
64 kb barrier.

I know this is code size not time. All the time evidence I have
is anecdotal. Several MPE clients have been bought for the
technology developed with Forth. Usually when the buyer
tries to change the programming language, they also end up
changing the culture. In the vast majority of these cases
productivity (in terms of new product development rate)
suffers badly.

Stephen

--
Stephen Pelc, steph...@mpeforth.com
MicroProcessor Engineering Ltd - More Real, Less Time
133 Hill Lane, Southampton SO15 5AF, England
tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
web: http://www.mpeforth.com - free VFX Forth downloads

foxaudio...@gmail.com

unread,
Sep 28, 2016, 11:05:46 AM9/28/16
to
Albert, I can't tell if you are being funny or if you think this true.
Care to clarify?

For the record on my side having managed both engineering teams and sales teams
they are very different creatures and one cannot replace the other.
Engineering people do engineering. No issue there.

Sales people despite what might be believed here are relationship managers
maintaining the emotional side of business relationships. If you don't believe
that then you have never had to convince someone to spend $4,000,000 USD
NOW in exchange for "profit in the future". It takes some hand holding.
(figuratively speaking)

BF

P.S. I have never claimed to be a sales person, but I have had to impersonate
one on occasion to help my sales team get a big contract signed.
It's exhausting.

Andrew Haley

unread,
Sep 28, 2016, 12:40:38 PM9/28/16
to
foxaudio...@gmail.com wrote:
>>
>> Of course not. Elizabeth was good friends with a very non-knowledgeable
>> manager that she knew from the golf course. After a lot of fancy diners
>> payed by her, the inapt manager forced Forth down the throat of
>> his poor technicians, who despite the odds succeeded in making an excellent
>> product. ;-)
>>
>> Groetjes Albert
>> --
>> Albert van der Horst, UTRECHT,THE NETHERLANDS
>> Economic growth -- being exponential -- ultimately falters.
>> albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst
>
> Albert, I can't tell if you are being funny or if you think this true.
> Care to clarify?

He's poking our latest anonymous troll with a stick. He perhaps
shouldn't do that, but I imagine it's hard to resist.

Andrew.

foxaudio...@gmail.com

unread,
Sep 28, 2016, 1:13:45 PM9/28/16
to
OK. I thought so, but it was written "with a straight face".

Thanks Andrew.

BF

Elizabeth D. Rather

unread,
Sep 28, 2016, 2:35:58 PM9/28/16
to
I wish we could. Unfortunately, we rarely know all the internal
processes on which our customers base their decisions, but because Forth
is relatively unknown in general computing, it usually involves someone
in the company who has been in or knows about another company that used
Forth successfully (a more concrete recommendation than just "being a fan").

As far as the "1/4" figure is concerned, we do have a very large number
of actual instances in which development time estimates were given by
experienced programmers in alternative languages (usually C) and by
Forth programmers, and we have seen many of these projects to completion
in which the low Forth estimate worked out. Of course, the "1/4" is an
approximation. Sometimes it's a lot less, sometimes not so much,
especially when the specifications turn out to have been inadequate
(which would have hampered the C project as well, of course).

And, we've seen it go the other way. One company in the LA area had a
line of instruments that had been programmed in Forth for years. They
needed a new model. We quoted $30K for it, but the new division manager
insisted that it (and the code for all their other instuments) be
re-written in a "standard language" (C) and got an estimate from another
company of $50K for the re-write. About 5 years later, they called us to
add a minor feature to our code; when we asked what had happened to the
C project, we learned that it was still under way but not complete, and
the cost had bloomed to >$350K.

We do describe a number of projects on our web site, both older and more
recent.

Elizabeth D. Rather

unread,
Sep 28, 2016, 2:39:46 PM9/28/16
to
Funny. I can't play golf. :-)

> For the record on my side having managed both engineering teams and sales teams
> they are very different creatures and one cannot replace the other.
> Engineering people do engineering. No issue there.
>
> Sales people despite what might be believed here are relationship managers
> maintaining the emotional side of business relationships. If you don't believe
> that then you have never had to convince someone to spend $4,000,000 USD
> NOW in exchange for "profit in the future". It takes some hand holding.
> (figuratively speaking)
>
> BF
>
> P.S. I have never claimed to be a sales person, but I have had to impersonate
> one on occasion to help my sales team get a big contract signed.
> It's exhausting.

foxaudio...@gmail.com

unread,
Sep 29, 2016, 9:59:16 AM9/29/16
to
>
> And, we've seen it go the other way. One company in the LA area had a
> line of instruments that had been programmed in Forth for years. They
> needed a new model. We quoted $30K for it, but the new division manager
> insisted that it (and the code for all their other instuments) be
> re-written in a "standard language" (C) and got an estimate from another
> company of $50K for the re-write. About 5 years later, they called us to
> add a minor feature to our code; when we asked what had happened to the
> C project, we learned that it was still under way but not complete, and
> the cost had bloomed to >$350K.
>

It's remarkable how a manager could survive making that decision in a well run
business. Ten times budget over-runs are not well tolerated in the world I came
from.

It would seem from that story that it's not only Forth people who have
"religious beliefs" about programming languages.

Thanks for the business world + Forth anecdotes Elizabeth. I always appreciate
the insights.

BF

Elizabeth D. Rather

unread,
Sep 29, 2016, 3:43:35 PM9/29/16
to
On 9/29/16 3:59 AM, foxaudio...@gmail.com wrote:
>>
>> And, we've seen it go the other way. One company in the LA area had a
>> line of instruments that had been programmed in Forth for years. They
>> needed a new model. We quoted $30K for it, but the new division manager
>> insisted that it (and the code for all their other instuments) be
>> re-written in a "standard language" (C) and got an estimate from another
>> company of $50K for the re-write. About 5 years later, they called us to
>> add a minor feature to our code; when we asked what had happened to the
>> C project, we learned that it was still under way but not complete, and
>> the cost had bloomed to >$350K.
>>
>
> It's remarkable how a manager could survive making that decision in a well run
> business. Ten times budget over-runs are not well tolerated in the world I came
> from.

Well, it was not the same manager :-) I have no idea what all went on
during those years, but the "we needed a standard language" is hypnotic.
They also hoped by doing the rewrite that they could find "$30/hr
programmers on every streetcorner." An expensive "economy"!

> It would seem from that story that it's not only Forth people who have
> "religious beliefs" about programming languages.
>
> Thanks for the business world + Forth anecdotes Elizabeth. I always appreciate
> the insights.

Thank you!

Stephen Pelc

unread,
Sep 30, 2016, 5:39:12 AM9/30/16
to
On Thu, 29 Sep 2016 09:43:29 -1000, "Elizabeth D. Rather"
<era...@forth.com> wrote:

>Well, it was not the same manager :-) I have no idea what all went on
>during those years, but the "we needed a standard language" is hypnotic.
>They also hoped by doing the rewrite that they could find "$30/hr
>programmers on every streetcorner." An expensive "economy"!

I suspect that the "average programmer" trap is the real reason for
failure. I have been watching a similar fiasco at a client. After
seven years the "standard language" team has been sacked and the Forth

team is back in favour.

It's nearly always a bad sign when the HR department gets involved in
hiring programmers.

lawren...@gmail.com

unread,
Sep 30, 2016, 7:54:35 PM9/30/16
to
On Friday, September 30, 2016 at 8:43:35 AM UTC+13, Elizabeth D. Rather wrote:
> They also hoped by doing the rewrite that they could find "$30/hr
> programmers on every streetcorner."

You may reasonably expect that with PHP and Java, but not with C. C is not kind to mediocre programmers <http://harmful.cat-v.org/software/c++/linus>.

Paul Rubin

unread,
Sep 30, 2016, 8:14:22 PM9/30/16
to
lawren...@gmail.com writes:
>> They also hoped by doing the rewrite that they could find "$30/hr
>> programmers on every streetcorner."
> You may reasonably expect that with PHP and Java, but not with C. C is
> not kind to mediocre programmers

Well, we don't know how long ago that was. $30/hr used to be pretty
good ;-). It also seems to me that kind or unkind as C might be, C
programming doesn't pay very well around here compared with other
languages these days. I talked with a guy whose company has a big C
application and was surprised by the low salaries he was offering.

> <http://harmful.cat-v.org/software/c++/linus>.

http://arstechnica.com/security/2016/09/linux-kernel-security-needs-fixing/

Fwiw, I've written a lot of C in my life and more recently have been
finding C++ to be much quicker and less bug-prone to program in than C.
There's an efficiency hit (speed and memory) from using the STL
containers etc., but it's nothing like the difference between C++ and
scripting. I think a C++ programmer with a solid understanding of C is
better off than a pure C programmer. If I were writing a kernel though,
I'd give serious thought to using Ada, or maybe Rust when it gets more
mature.

Albert van der Horst

unread,
Oct 1, 2016, 4:57:32 AM10/1/16
to
In article <d68c0c59-4f0d-436c...@googlegroups.com>,
That is an interesting stand, and probably true for kernel programming
in C++. Especially the STL may not be a good idea for programs that
must be speed ("performance") aware.
I've maintained a large program in C++ at the Dutch Tax Office.
That was one mm short of a nightmare.

That C++ is unreliable is not in general true for tools made by skilled
programmers.
My first(!) project in C++ was a sorting programming using
regular expression. I used templates, and one even was used recursively,
i.e. the same template was used inside itself.
OTOH the handling of regular expressions was c-like and a politically
correct C++ way of doing that could've been really slow.
(Look up ssort on my site.)
The test report is interesting. Not only did it outperform alternative
free programs that I could find, in speed and in capabilities,
but it did better in the test. With few adaptations (w.r.t. I/O
and include files) this program compiles and works after 23 years.
One of the other programs was the GNU sort of the time.

(And yes I did formulate the test beforehand, and I did not make
improvements to my program because of faults found in the tests.)

In the right hands C++ is an awful tool.

dunno

unread,
Oct 1, 2016, 9:12:32 AM10/1/16
to
<lawren...@gmail.com> wrote:
> On Saturday, September 24, 2016 at 8:19:03 PM UTC+12, Elizabeth D. Rather wrote:
>> The largest Forth projects I know of were never published and never will
>> be. They are either proprietary or highly secure. The vast majority of
>> computer projects are never published.
>
> And yet there seems to be a peculiar absence of Forth from the Free
> Software world. Have you ever worked on anything as large as the Linux
> kernel? That’s currently up to 20 million lines of source code, with
> something like 1000 active contributors, and can manage a major new
> stable release every few months. It is probably the most successful and
> productive single software project in history.

I wonder why wasn't it written in Lisp. Couldn't it be done in Lisp with 1%
of the effort?

>> Who paid for them? Someone. They were not volunteer efforts.
>
> Most of the projects I mentioned were indeed volunteer efforts.
>
>>> More than that, does Forth seem to appeal to the loners, those who don’t
>>> work well on collaborative projects? Which is why it never gets used for
>>> anything large...
>
>> I spent 35 years working on collaborative Forth projects, many of which
>> were large and successful, but not widely publicized. That is the tragedy.
>
> Lots of companies have discovered that they can lower development costs
> by open-sourcing what were originally in-house projects. How come that
> never seems to apply to anything done in Forth?
>



--
dunno

Albert van der Horst

unread,
Oct 1, 2016, 9:58:46 AM10/1/16
to
In article <962482049.497019600.81...@news.mixmin.net>,
dunno <du...@dunno.dunno> wrote:
><lawren...@gmail.com> wrote:
>> On Saturday, September 24, 2016 at 8:19:03 PM UTC+12, Elizabeth D. Rather wrote:
>>> The largest Forth projects I know of were never published and never will
>>> be. They are either proprietary or highly secure. The vast majority of
>>> computer projects are never published.
>>
>> And yet there seems to be a peculiar absence of Forth from the Free
>> Software world. Have you ever worked on anything as large as the Linux
>> kernel? That’s currently up to 20 million lines of source code, with
>> something like 1000 active contributors, and can manage a major new
>> stable release every few months. It is probably the most successful and
>> productive single software project in history.
>
>I wonder why wasn't it written in Lisp. Couldn't it be done in Lisp with 1%
>of the effort?

Maybe, but Lispers are conspicuously absent from the golf courses.

>dunno

Paul Rubin

unread,
Oct 1, 2016, 3:20:55 PM10/1/16
to
alb...@cherry.spenarnc.xs4all.nl (Albert van der Horst) writes:
> <http://harmful.cat-v.org/software/c++/linus>.
> That is an interesting stand, and probably true for kernel programming
> in C++. Especially the STL may not be a good idea for programs that
> must be speed ("performance") aware.

I don't think STL causes significant slowdowns depending on what you're
doing. It does cause some memory bloat, and sometimes there are some
design snags (there might or might not be a Boost counterpart that does
what you want).

A couple other things I'd add: that post was written in 2004, and one of
its big complaints was about the unreliability of C++ compilers and
libraries in those days. They have gotten a lot better since then.

The language itself has also gotten a lot better. C++11 was really a
major improvement. It allowed bypassing a lot of Java-like bureaucracy
(through type inference, looping over containers, etc), made STL more
useful, and added new capabilities like move semantics. C++ now feels
about halfway between C and Python in terms of the convenience level it
provides, plus it has a real type system, plus the compiled code is
usually very fast.

It still probably has a lot of obscure hazards, so maybe it's dangerous
for non-experts for things like kernels and internet programs. For the
data crunching stuff I currently use it for, though, I've been enjoying
it.

Albert van der Horst

unread,
Oct 1, 2016, 7:55:55 PM10/1/16
to
In article <87d1jj2...@nightsong.com>,
Paul Rubin <no.e...@nospam.invalid> wrote:
>alb...@cherry.spenarnc.xs4all.nl (Albert van der Horst) writes:
>> <http://harmful.cat-v.org/software/c++/linus>.
>> That is an interesting stand, and probably true for kernel programming
>> in C++. Especially the STL may not be a good idea for programs that
>> must be speed ("performance") aware.
>
>I don't think STL causes significant slowdowns depending on what you're
>doing. It does cause some memory bloat, and sometimes there are some
>design snags (there might or might not be a Boost counterpart that does
>what you want).

I won't say STL per se was the problem, it was the way it was used by
the dudes that were hired by the tax office.

>
>A couple other things I'd add: that post was written in 2004, and one of
>its big complaints was about the unreliability of C++ compilers and
>libraries in those days. They have gotten a lot better since then.
>
>The language itself has also gotten a lot better. C++11 was really a
>major improvement. It allowed bypassing a lot of Java-like bureaucracy
>(through type inference, looping over containers, etc), made STL more
>useful, and added new capabilities like move semantics. C++ now feels
>about halfway between C and Python in terms of the convenience level it
>provides, plus it has a real type system, plus the compiled code is
>usually very fast.

But it is so big that even an expert only understands part of it in
detail. Even in Forth we sometimes consider obscure conflicts between
part of the language. It is like Italy. Everybody can get arrested
at any time, because there are so many laws that it is just a matter
of finding the one a person is trespassing at the time.

>
>It still probably has a lot of obscure hazards, so maybe it's dangerous
>for non-experts for things like kernels and internet programs. For the
>data crunching stuff I currently use it for, though, I've been enjoying
>it.

It requires a lot of care, then it may pay off.
You forgot to mention safety critical software, by the way.

Paul Rubin

unread,
Oct 1, 2016, 8:00:55 PM10/1/16
to
alb...@cherry.spenarnc.xs4all.nl (Albert van der Horst) writes:
> But it [C++] is so big that even an expert only understands part of it
> in detail.

Yeah, lots of it is legacy though. If you maintain an old program you
can look unknown stuff up in the manual. If you're writing new code,
stay in the modern fragment and it holds up ok. There are a few docs
about how to do that.

> It requires a lot of care, then it may pay off. You forgot to mention
> safety critical software, by the way.

Yeah, there are some standards for safety critical C++ but I'm
skeptical. I've played around with Ada a little and find it more
cumbersome than C, but not drastically so, and it feels a lot more
solid. It was made for safety critical stuff and still seems like a
good choice.

polymorph self

unread,
Oct 1, 2016, 8:23:05 PM10/1/16
to
On Saturday, September 24, 2016 at 5:27:36 PM UTC-4, Bernd Paysan wrote:
> Am Fri, 16 Sep 2016 09:03:12 +0000 schrieb Anton Ertl:
>
> > Bill Zimmerly <billzi...@gmail.com> writes:
> >>On Saturday, August 13, 2016 at 3:08:38 PM UTC-5, JUERGEN wrote:
> >>> As Bernd said:
> >>> Minimum Word Set How many primitives does a Forth need to get started?
> >>> Surprisingly few, as you can see with Gforth EC,
> >>> which provides a high-level definition for almost every primitive.
> >>
> >>JUERGEN, what is "Gforth EC?"
> >
> > It's the embedded control variant of Gforth. It uses primitives written
> > in assembly, primitive replacements written in Forth, and for the rest
> > of the system there are lots of options to disable things that rely on
> > stuff that is only available on bigger platforms. It is also mostly
> > undocumented, and much of the documentation that exists is in German, in
> > particular <http://wiki.forth-ev.de/doku.php/projects:r8c:r8c_forth>.
>
> English translation of that page (a bit less than the German page):
>
> http://wiki.forth-ev.de/doku.php/en:projects:r8c:r8c_forth
>
> --
> Bernd Paysan
> "If you want it done right, you have to do it yourself"
> net2o ID: kQusJzA;7*?t=uy@X}1GWr!+0qqp_Cn176t4(dQ*
> http://bernd-paysan.de/

Bernd!!! hows the gforth webserver?

Hows Germany? getting atomic power online like france yet?
soalr wont work and you have to back it with so much coal since it unreliable
go atomic liek france
build thorium liquid salt reactors
super safe and clean!!
reduce gov spending and regs!

polymorph self

unread,
Oct 1, 2016, 8:24:35 PM10/1/16
to
On Saturday, September 24, 2016 at 10:26:19 PM UTC-4, lawren...@gmail.com wrote:
> On Saturday, September 24, 2016 at 8:19:03 PM UTC+12, Elizabeth D. Rather wrote:
> > The largest Forth projects I know of were never published and never will
> > be. They are either proprietary or highly secure. The vast majority of
> > computer projects are never published.
>
> And yet there seems to be a peculiar absence of Forth from the Free Software world. Have you ever worked on anything as large as the Linux kernel? That’s currently up to 20 million lines of source code, with something like 1000 active contributors, and can manage a major new stable release every few months. It is probably the most successful and productive single software project in history.
>
> > Who paid for them? Someone. They were not volunteer efforts.
>
> Most of the projects I mentioned were indeed volunteer efforts.
>
> >> More than that, does Forth seem to appeal to the loners, those who don’t
> >> work well on collaborative projects? Which is why it never gets used for
> >> anything large...
>
> > I spent 35 years working on collaborative Forth projects, many of which
> > were large and successful, but not widely publicized. That is the tragedy.
>
> Lots of companies have discovered that they can lower development costs by open-sourcing what were originally in-house projects. How come that never seems to apply to anything done in Forth?

chuck moore should get coloforth and a browser working on a pc
in 1% of 1% the code
and make linux look like amateurs

linux n bsd make apple look like amateurs same as microosft
openbsd 6 +icewm+chrome here

polymorph self

unread,
Oct 1, 2016, 8:27:49 PM10/1/16
to
could forth do big data?
like map reduce kinda stuff on a cluster of amd cpu servers?
like spark hadoop and solr are used for now?
I work for a conglomerate with all kinda CMS and manufacturing and customer ERP and sales stuff and its mostly java garbage on linux
mega inefficient
one app is a total of 900Ghz cpu and 4T ram and its semi slow.
It also will burn up some boxes, while others sit idle.....
SOOO sad

polymorph self

unread,
Oct 1, 2016, 8:28:38 PM10/1/16
to
Hey man keep it polite you dumb shit.

polymorph self

unread,
Oct 1, 2016, 9:12:49 PM10/1/16
to
so forth can do better head to head with c?

Wow

I must set aside time to experiment with and learn forth......

seems very powerfullllll

polymorph self

unread,
Oct 1, 2016, 9:14:25 PM10/1/16
to
why not spend 100k then see some profit

like 100k

then pay another 100k

polymorph self

unread,
Oct 1, 2016, 9:23:24 PM10/1/16
to
this is an interesting point!

polymorph self

unread,
Oct 1, 2016, 9:33:18 PM10/1/16
to
paul graham sold viaweb for 50m

ita runs orbits on lisp

miste...@gmail.com

unread,
Oct 2, 2016, 3:18:29 PM10/2/16
to
I am interested in FORTH, which is why I am in a FORTH GROUP.

So, not only, can you not understand what the topic of this group is, but you ALSO, cannot count as Beatles Sgt Pepper was released in 1967, an lot more than 20 years ago.

Perhaps you might develop some intelligence, and discuss it SOMEWHERE ELSE.

For anyone else who's interested in discussing FORTH, and ONLY, F-O-R-T-H, there is a very lively FORTH PROGRAMMING group on Facebook, where there is ZERO tolerance TROLLing and SPAM.



> Lisp never seems to get around to creating True AI;
> whereas Forth has been at the forefront of True AI
> for 20 years, since Sgt. Pepper told the band to play.

lawren...@gmail.com

unread,
Oct 2, 2016, 9:45:56 PM10/2/16
to
On Sunday, October 2, 2016 at 2:12:32 AM UTC+13, dunno wrote:
> Couldn't it be done in Lisp with 1% of the effort?

That kind of thing has been done <http://paulgraham.com/carl.html>.
0 new messages