A Forth Story...

2519 views
Skip to first unread message

Mark Wills

unread,
Apr 4, 2012, 7:19:56 AM4/4/12
to
...but is it the story of Forth?

Enjoy.
---------------------------------------------------------

A Forth Story
Allen Cekorich
Walnut Creek, California
Forth Dimensions, July/August 1995

In 1975, I was fresh out of college with a bachelors degree in physics
and a need to find a job that paid enough to support myself. After a
six-month search, I landed an entry-level position at MDH Industries
in Monrovia, California, where they promised to increase my minimum
wage starting salary once I proved myself useful. I was to work with
the president and owner, Dr. Howard Marshall, Ph.D., on a project to
develop an instrument to measure the real-time sulphur content of a
coal stream by detecting and analysing the prompt gamma ray spectrum
resulting from the absorption of thermal neutrons from a Californium
252 radioactive source. The opportunity sounded exciting to my naive
ears, as it was my first professional job. I was finally in the real
work world of adults and ready to go on to do great things. Remember,
this was twenty years ago and I was only twenty-two years old. I had
no previous experience to guide me in the situation I was in, no
mentor to teach me, no helping hand and no idea of where to begin or
what to do. Like most good engineers, I decided to fake it until I
understood my value.

I spent the first Year or So understanding the design parameters of a
Sulphur meter, which involved creating a computer model on a Tymshare
IBM 370 System accessed with a Teletype terminal at the fantastic rate
of 30 characters Per second. This was a revolution from the punch
cards I had used in college on a CDC 3150 that could be viewed through
a glass window in the foyer of the computer department. MY degree in
physics mandated that the modelling language would be Fortran, and I
naturally enjoyed programming, which was probably related to my
ability and love for mathematics. I had completed the coursework for a
degree in mathematics with a 4.0 average in college. I was proud of
the growing complexity and depth of my simulation, which was now
consuming hours of computer time during the night hours when the cost
was lowest.

It came to pass by the natural events of the development process that
construction of a sulphur meter prototype was to take place. Howard
Marshall had earned his doctorate in physics from the California
Institute of Technology, which is very much in bed with the Jet
Propulsion Laboratory in Pasadena. His contacts encouraged a computer-
based instrument and recommended a strange language called Forth that
was floating around the lab. They convinced him it was possible to
build a small, Z80-based controller that could acquire the spectrum
from the sodium iodide detector and maintain real-time signal
processing rates to compute the actual sulphur content.

Somehow, outside my area of responsibility, an S100-bus system showed
up from the Empirical Research Group. My electrical engineer office
mate had been assigned the task of fooling around with it for
development purposes, but no progress seemed to ever be at hand. After
some time had passed, a fellow named Martin Smith showed up from the
Cal Tech network. He brought with him a Forth running on a Monolithic
280-based multi-bus system, and progress toward a controller began.

I was preoccupied with designing the sulphur meter based on my Fortran
simulation. but the natural need to verify the model from real data
taken from the prototype was growing important. With the help of
Marty, I started playing with the Forth computer. This was the first
time in my life that I had actual, physical contact with a computer.
Those big, eight-inch Shugart floppy drives that held a whopping 120K
bytes, and the awesome 64K of fast RAM, along with the character-based
video display terminal, intoxicated me. What what was more puzzling
was this strange way of talking to the computer, called Forth. I had
taken a computer language survey class in college which included
Fortran, Algol, PWM, Cobol, Trac, Lisp, and APL, but had never heard
of anything called Forth. It was strange and unnatural without program
statements. I could not find the compiler, linker, or listing output.
I could not figure out how it worked, but I realized that I now had
direct contact with the CPU without the need to learn complex system
manuals. I finally had a computer under my control and I went to town.
Over the next few years, I had a good time writing programs on that
small Forth system to do data preprocessing for input to the real,
grown-up IBM Tymshare computer for comparison to my simulation.

I taught myself the Z80 assembler in the Forth, which gave me access
to the computer hardware. I played with serial comms, DMA for the disk
drive, video display controller, interrupts, and, most important of
all, the AMD 9511 floating-point coprocessor. I wrote linear matrix
functions, least squares routines, statistical measures, data filters,
and data stacks for working with the gamma ray spectra. I used that
little 64K computer to its limit to complete the calibration of the
first delivered sulphur meter. I also became an expert in using Forth,
although I still did not fully understand what I was doing.

About this time, around the beginning of the eighties, a recruiter
called me searching for a Forth programmer. I was not a Forth
programmer in my mind. I did not see myself as a Forth programmer. I
was a physicist using a tool to do a job. Anyway, I went on an
interview to Forth, Inc. in Manhattan Beach, California, and met a man
named Edward Conklin. We talked about what I had been doing with
Forth, I showed him some of my listings, toured the offices, and shook
hands upon departing. A few days later, the recruiter called saying I
had been offered a job for more money than I was making and encouraged
me to accept. I was puzzled. I was not a Forth programmer. Why did
they want me? What would it be like? I just did not understand where I
would fit in. I declined the position, Over the years, I have wondered
what direction my career would have taken if I had just said yes.
Looking back, it is easy to see now that I was an exceptional Forth
programmer, as following parts of my story will reveal; but remember,
I was still in my twenties, working on my first job, which limited my
view of my career horizon. My destiny would take me to other places
and back again, to Forth.

My job was winding up with the completion of the first sulphur meter.
Martin Smith had left earlier, going back to a previous job at
Technicolor in Hollywood. I had grown as an engineer, becoming more
than could be supported by the twenty-five person company that was
owned by a single person. The end of my first job had come, so I
resigned and, that weekend, I bought a Victor 9000 personal computer.
I did have the vision to see that what I had done with that small 280
computer spelled the death of my cherished IBM 370 computer running
Fortran over the phone line. The future was in small, personal systems
that clearly exceeded the power of the off-line dinosaurs. I did not
know what I would be doing, but I knew what I would have to do and
that was to learn the basics of the smaller machines. As fate would
have it, Many called me the following Monday, and a week later I was
working for Technicolor. It was now May of 1983.

I had taken the job as a computer programmer who would develop the
control software for a film printer. This was a special kind of
printer to reduce the cost of choosing the RGB color light levels for
a film scene by printing one frame of scene onto the positive, thereby
saving the cost of developing a complete print just to check the
production parameters. I had to learn Intel's version of PL/M and
assembly for the 8086, which was the heart of the Intel 88/40 multi-
bus board computer controller. I was back to compilers, linkers, and
locators, and got to play with in-circuit emulators. I discovered real-
time control that enables computers to interact with the physical
world. I learned multitasking, interrupt response times, and control
inputs and outputs from A/D and D/A chips, counters, and parallel
lines. I got to play with big servo motors. I had a ball. I almost
forgot about Forth.

But not completely. I obtained the fig-Forth listing for the 8086 with
the intention to boot a Forth on my Victor 9000. 1 spent many nights
and weekends typing in the listing as I learned about DOS and just how
the PC worked. I gathered documentation, bought some software, and
joined the Victor 9000 users group. Time passed. Work went well with
the nearing completion of the proof printer. Then Hollywood came into
the picture. Hollywood is not in the real world, they make it up as
they like. The engineering director and the chief engineer got
themselves fired for no apparent reason other than a pompous power
play which I never understood. The upshot was that my project was
cancelled, leaving me in limbo. I chose to resign a month later,
simply because I no longer had a defined job. It was July of 1984.

I spent the next five months working twelve-hour days at home on my
Forth system. I booted the kernel as a DOS executable, and promptly
rewrote it to my liking, including redesigning the inner interpreter.
I was forced, by finally understanding the true nature of Forth, to
add an 8086 assembler of original design, an interface to DOS for
files and display control, floating-point words for an 8087
coprocessor, and many utilities to work with my system. Looking back,
I wonder why I did it. Why would I create a complete Forth development
system for the PC? I had no use for it, nor any future plans for the
system. I believe the answer was just to learn how personal computers
work. Forth gave me direct access to the machine, and freedom to
explore designs that felt right to me. I did not have to depend on a
vendor to show me what I could do. My physics training led me to
explore fundamentals of computer operation much as I explored the
fundamental laws of the physical world. I also began reading Byte
magazine every month to keep up on the technology, and I read books
such as Donald Knuth's Art of Computer Programming. Forth gave me
freedom to explore beyond the limitations of a fixed compiler with a
straight-jacket syntax. I had finally caught the Forth bug.

The realities of living without an income finally caught up with me.
In December of 1984, I found a job with Litton Industries. The fibre
optic department under Mike Suman had a contract with Western
Geophysical to build a demonstration underwater fibre optic microphone
towed array for oil exploration. The job was to complete an Intel
multi-bus computer demodulator for five sensors. The software was
written in PL/M-86 and assembler, and was presented to me as almost
done. I learned quickly that the statement was politically correct but
entirely false from an engineering perspective. I had wandered blindly
into defence engineering for the first time. I redesigned the computer
system to use three single-board computers in a multi-bus backplane,
and wrote the software from scratch to multiplex the three 8086 CPUs
to accomplish the demodulation. Four months later, it was finished,
complete with a real-time video display of the sensor outputs for the
all-important demo. The next day, the contract was cancelled due to
the oil glut of the mid-eighties.

I wondered if I had a job. The major part of the fibre optic
directorate was involved in fibre optic rotation sensor development
for military applications. The program seemed to be headed by a man
named Dr. George Pavlath, who was a Ph.D. in physics from Stanford
University. He had a problem with the testing of the rotation sensors
on the rate tables which used H-P BASIC controllers. He knew from my
resume that I had experience with Forth, and he had heard from his
friends at Stanford that it was a very neat control language. I told
him I had developed my own Forth system for the PC, and we agreed to
try it out for rate table control. I brought in my system and spent a
few months porting it to the IBM PC, adding drivers to read IEEE-488
instruments via a Metrabyte card, and rate table position from a
CTM-05 counter board. I completed a fully automated rate table test
station and began to test fibre optic gyros.

The application of Forth to a flexible test environment was perfect. I
went much further and added online data analysis, and began
constructing my own unique plotting additions to Forth based on
Brodie's MAKE DOER construct. My Forth system grew to maturity as
different problems demanded solutions. I quickly returned to my
physics roots to contribute to the new technology of fibre optic
sensor development.

All was not well, though. I encountered the first resistance to the
Forth way of doing business. The Forth development environment was so
efficient that the H-P BASIC controllers were made obsolete. This led
to resentment by engineers who had invested their time learning H-P
BASIC. I offered to teach them Forth, but remember, this was a system
I had personally written. It was my creation, and no one could
understand it as well as myself. Why should they invest part of their
careers learning a tool that was the personal property of one
engineer? They did have a point. But the fact was that my system was
doing things that nobody thought possible before. It was even worse
than that. It turned out that someone in a different Litton division
was using Forth for production test station control for the same
reason, its efficiency and power. This person was upset that I had
brought in a new dialect. He had his box of tools and would not look
at mine, and we could not share code.

As the years passed, my system became entrenched in the fibre optic
directorate and enabled a lot of progress to be made, even though I
spent most of my time concentrating on the physics of the devices. A
few people finally learned my system, which became quite powerful, but
the lingering resentment remained. Other engineers felt I had cheated
by using Forth, that it was unfair to them. I even published my Forth
system, called AFORTH, through the Victor 9000 users group. I was told
that up to forty people bought copies, and the head of the users group
eventually got a job writing Forth.

Sometime in the eighties, I got it in my head that Forth could be
applied to build fast demodulators, especially since the advent of
Forth chips. I convinced George Pavlath to send me to a company called
Novix to check out a Forth-based CPU. It was on this trip that I met
Charles Moore. He and I talked for half an hour about possibilities. I
had a hard time believing that this was the creator of Forth. I played
with a Novix development system, unaware that the chip was not yet
real, in the sense that one could not buy one. In truth, I felt I was
sticking my neck out by suggesting a Forth design when other engineers
wanted my head for what I had accomplished in the testing area. The
reality was, it did not matter - I ordered a Novix chip which was
never delivered, since the company eventually folded. I felt relieved.
I went on to work with DSP processors such as the TMS320C25, which
were now capable of implementing complex demodulation designs and
provided me with new areas to explore.

Then the Berlin Wall fell. The defence build-up was over in a day, but
it took several years of excruciating pain for many innocent people to
accept the change in their lives. I held out until September of 1991,
when I finally admitted it was time for me to leave. I could no longer
pay the price required to survive. In January of 1989, I had replaced
my ageing Victor 9000 with a Dell 386 computer. I briefly went into
consulting with my Forth system. I worked several months for the
Physical Optics Corporation in Torrance, California, automating their
production holographic testers. I realized again that I was sticking
them with a custom solution that could not be updated without me. It
was just not viable. Even though they were delighted with the results
of my work, I never got called back; probably because the engineering
staff had changed in the interim.

I was out of work until May of 1992, when I got a call from Systron
Donner in Concord, California. A half-dozen Litton refugees had found
jobs there, and they were eager for me to join them. I moved from Los
Angeles to beautiful Contra Costa county, and thought I had found a
wonderful place to work. The CEO was Dick Terrell, who came from
Litton marketing, and was converting the company to quartz sensor
technology. It turned out that I was the last one hired before the
defence downsizing began in earnest at the company. I had to relive
the experience at Litton during the next year and a half.

I was hired to do DSP software for the Quartz Inertial Measurement
Unit, but the military requirements for software quality control were
beyond the resources of the company, so the project was cancelled a
month after I arrived. Instead, I was asked to work on a substitute
IMU for a contract delivery that was not going to happen on the
current schedule. One of the main problems was that the rate table
test station, which was being coded in C, would not be ready in time.
I volunteered my Forth system for the interim station, and completed
the work in several months. Once again, I experienced the wrath of
engineers who said I cheated because they were forced to use the
"correct C approach," while I used this thing called Forth, which
obviously made the work too easy. Go figure. I should have known
better; the truth was, nothing mattered, because the company was being
downsized with a vengeance, and when the CEO was replaced, I soon lost
my job in December of 1993.

Among the people who joined me going out the door was a guy who wanted
to start a company with a product, based on the Systron Donner
rotation sensor, which would measure body movements for medical
purposes. I met with him and agreed to program a prototype piece of
equipment using my Forth system, in exchange for a future piece of the
company. In one month, I had a prototype that displayed real-time
rotation movement and medical parameters for Parkinson's syndrome. It
was demonstrated to the Parkinson's institute and was well received.
However, I told my partner that the final device could not be
programmed in Forth. Why would I say such a thing? Simply because
technology had passed Forth by, in my opinion. It was no longer
possible for one person to develop all the software required in a
graphical environment. I needed to buy the tools I needed to leverage
my time for a professional job. I could no longer play the role of the
maverick programmer, nor did I want to. I need to be part of a
collaborative community in which I can give and receive work. I do not
see Forth as a viable solution as of today.

The start-up company never happened, for financial reasons, so I have
been unemployed since then. I am also forty-two years old, and am
looking at my life from the midway point. I have spent nearly twenty
years doing this Forth thing, and I do not know if I want to continue
with it. A year ago, I bought the Symantec C++ development package for
Windows. I have yet to use it. It does not excite me like Forth did,
because it does not give me the freedom to create those program
constructs which enable my ideas. I guess I am still undecided on the
issue of Forth, so I will renew my subscription to Forth Dimensions
for at least this one last time.

Mentifex

unread,
Apr 4, 2012, 2:04:42 PM4/4/12
to
On Apr 4, 4:19 am, Mark Wills <markrobertwi...@yahoo.co.uk> wrote:
in http://groups.google.com/group/comp.lang.forth/msg/95c3f82d1c681296
> ...but is it the story of Forth?
>
> Enjoy.
> ---------------------------------------------------------
>
> A Forth Story
> Allen Cekorich
> Walnut Creek, California
> Forth Dimensions, July/August 1995
>
> [...]
> Sometime in the eighties, I got it in my head that Forth could be
> applied to build fast demodulators, especially since the advent of
> Forth chips. I convinced George Pavlath to send me to a company called
> Novix to check out a Forth-based CPU. It was on this trip that I met
> Charles Moore. He and I talked for half an hour about possibilities. I
> had a hard time believing that this was the creator of Forth. I played
> with a Novix development system, unaware that the chip was not yet
> real, in the sense that one could not buy one. In truth, I felt I was
> sticking my neck out by suggesting a Forth design when other engineers
> wanted my head for what I had accomplished in the testing area. The
> reality was, it did not matter - I ordered a Novix chip which was
> never delivered, since the company eventually folded. I felt relieved.
> I went on to work with DSP processors such as the TMS320C25, which
> were now capable of implementing complex demodulation designs and
> provided me with new areas to explore.

What a fascinating backstory! Thank you for sharing.

Mentifex (Arthur)
--
http://dis.4chan.org/read/prog/1332860361
http://groups.google.com/group/alt.memetics/msg/504d5ddc1aed4557

A. K.

unread,
Apr 4, 2012, 3:08:27 PM4/4/12
to
On 04.04.2012 13:19, Mark Wills wrote:
> ...but is it the story of Forth?
>
> Enjoy.
> ---------------------------------------------------------
>
> A Forth Story
> Allen Cekorich
> Walnut Creek, California
> Forth Dimensions, July/August 1995
<snip>

Whoever it is ( TZ condensed? ;-) )

we stopped using Forth long ago for much the same reason:
it is a niche tool for loners


Mark Wills

unread,
Apr 4, 2012, 3:29:32 PM4/4/12
to
On the face of it, I'm inclined to agree, however there are numerous
published examples of Forth being used very successfully in multi-
programmer projects, by both Forth Inc, and MPE. The Saudi airport and
the bomb dis-arming robot being two examples.

Any other anecdotes to prove or disprove the argument?

Where I work is a C shop, with 10s of thousands of lines of source. A
version control system is used, but programmers still essentially work
as individuals, being the 'owners' of a certain areas of the system.

How was the problem approached with block based systems being updated
by multiple terminals?

Elizabeth D. Rather

unread,
Apr 4, 2012, 4:42:46 PM4/4/12
to
As far as that story goes it was, but there is also a world of
professional-grade Forth systems, well-documented and supported by
successful vendors, conforming to international standards, and being
used in major projects in a variety of industries.

It is *a* Forth story, not *the* Forth story.

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."
==================================================

Bernd Paysan

unread,
Apr 4, 2012, 5:02:33 PM4/4/12
to
Mark Wills wrote:
>> we stopped using Forth long ago for much the same reason:
>> it is a niche tool for loners
>
> On the face of it, I'm inclined to agree, however there are numerous
> published examples of Forth being used very successfully in multi-
> programmer projects, by both Forth Inc, and MPE. The Saudi airport and
> the bomb dis-arming robot being two examples.
>
> Any other anecdotes to prove or disprove the argument?

The human psyche strongly discourages not to follow the mainstream. If
you do something odd, and it's more successful, then it's "cheating".
You have to go through this punch cards, through the printed out
listings, compilers, linkers, etc., and it has to be hard and awkward,
and using Forth instead and getting the job done quickly is just
cheating. You may be allowed to do so when you are a top programmer,
and sweap the ground with your fellow programmers in any other language,
too, because then, it's your superior knowledge, no longer cheating.
But then, their excuse is "we are mere mortals, we can not program in
this super-hero language".

Humans resist change. Forth, 40 years ago, was extremely odd. It lost
a good part of its oddness, since the classic compiled programming
language is on a global retreat. It is still odd with its stack and its
lack of syntax or typing system, but strong typing is no longer popular,
either.

Apart from this psychological aspect, the resist of change, which leads
to loners doing their stuff in Forth (because a loner does not care
about the herd), there is nothing that prevents cooperation in Forth.
Like with any other language, good cooperative programming is a
management issue, not a technical issue. You have to identify which
person fits which role in the team (people are not all equal), and you
have to make people communicate (they often don't on their own). You
have to set guidelines, and common coding style (it is much easier for a
group of people to read each other's code if it uses the same style -
and that works, regardless if it's Forth Inc.'s terse horizontal style,
or a more elaborated vertical style found elsewhere).

--
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://bernd-paysan.de/

A. K.

unread,
Apr 4, 2012, 5:08:38 PM4/4/12
to
On 04.04.2012 22:42, Elizabeth D. Rather wrote:
> On 4/4/12 9:08 AM, A. K. wrote:
>> On 04.04.2012 13:19, Mark Wills wrote:
>>> ...but is it the story of Forth?
>>>
>>> Enjoy.
>>> ---------------------------------------------------------
>>>
>>> A Forth Story
>>> Allen Cekorich
>>> Walnut Creek, California
>>> Forth Dimensions, July/August 1995
>> <snip>
>>
>> Whoever it is ( TZ condensed? ;-) )
>>
>> we stopped using Forth long ago for much the same reason:
>> it is a niche tool for loners
>
> As far as that story goes it was, but there is also a world of
> professional-grade Forth systems, well-documented and supported by
> successful vendors, conforming to international standards, and being
> used in major projects in a variety of industries.
>
> It is *a* Forth story, not *the* Forth story.
>
> Cheers,
> Elizabeth
>

I know that, in its niche Forth is great. And older than Lua or even C
.... ;-)

But in the heart of it it is a not a technical but a business
question/decision, whether to maintain a critical mass of skilled
employees and to rely on the availability of hired engineers in the
market. In our case it was 'no'.



Elizabeth D. Rather

unread,
Apr 4, 2012, 5:17:32 PM4/4/12
to
An engineer who is capable and experienced in your application domain
can learn Forth far quicker than a Forth programmer with a different
background can learn your application domain, so the lack of Forth
programmers "standing on every corner" (as one recruiter put it) is not
a major obstacle. And having learned Forth, that engineer will have all
the power and flexibility that Forth provides. Many of our customers
have gone that route, to great success.

dirk....@usa.net

unread,
Apr 5, 2012, 3:08:14 AM4/5/12
to di...@bruehlconsult.com
Thanks, Mark,
Thanks for your amazing story!
In Germany I worked twenty five years self-employed, using Forth since
1984. Several times I programmed things where people said it can't be
done. When it was done, they simply said "seems to be it can be done!"
Having developed a precision transformer ratio measurement system
using RSC-Forth on the Mitsubishi M38049, I came to the United States
nine years ago by invitation of the company for which I developed this
instrument. My last project was a three phase PWM, using an ARM micro
with MPE-Forth doing the PWM, and a M38049 with RSC-Forth as front end
to communicate with a PLC. To see what the PWM was doing when a PID
program was added, with Win32Forth I programmed an eight channel
oscilloscope to show different digital values inside the program as
analog waves.

When I lost my job after having a successful cancer treatment, I
started to upgrade Win32Forth-ForthForm to visualFORTH, because I
didn't like to wait any longer for a visual Forth. Now I am retired
and work with little micros on TI's LaunchPad. I had to start with C,
which I avoided all of my former life, and I am glad to have a Forth
for these little buggers now: http://www.4e4th.eu/

You have such a great experience in working with Forth, having done
much more exciting things than I ever did. It would be a pity if all
your knowledge would get lost.

You wrote "I do not see Forth as a viable solution as of today" - I
say: We will have a Renaissance of Forth. You wrote about all your
work you have done and about the experience you had. I don't know how
you found Comp.Lang.Forth, but with c.l.f you found a collaborative
community which will welcome you, I am sure about this. I am welcoming
you.

Please let me know what you think is missing with Forth. I am sure you
know that it is possible to add. Forth is extensible. When I asked for
a visual Forth, I have been told: "This is impossible to do" - but I
did it. I wrote the story at http://www.visualforth.blogspot.com and I
am proud that vF is mentioned as Forth for Windows at
http://keeh.net/page1/files/archive-27-december-2009.html - two links
below Chuck Moore.

I encourage you to use your time to analyze your needs and write a
list of suggestions and proposals of what can be done to make Forth
the right programming language and/or environment for the time we live
in and for our future. I am sure it is worth it.

Best Regards,
Dirk.

Paul Rubin

unread,
Apr 5, 2012, 3:47:41 AM4/5/12
to
dirk....@usa.net writes:
> Please let me know what you think is missing with Forth. I am sure you
> know that it is possible to add. Forth is extensible.

My own take: in a world of mechanized agriculture, where a "farmer" is
someone who sits in a control booth operating a fleet of remote
controlled tractors through a microwave satellite feed, Forth is like
planting potatoes in the raw soil with your bare hands. It's
spiritually enriching and in some cases maybe it's even the most
appropriate way to grow potatoes on a limited scale. Whether it can
meet the bottomless demands of corporate traffickers trying to fill
container ships with potatoes is a different matter, but luckier users
don't have to worry about this. ;-)

dirk....@usa.net

unread,
Apr 5, 2012, 2:54:14 AM4/5/12
to di...@bruehlconsult.com
On 4 Apr., 07:19, Mark Wills <markrobertwi...@yahoo.co.uk> wrote:
Please let me know what you think is missing with Forth. I am sure you

Mark Wills

unread,
Apr 5, 2012, 5:02:43 AM4/5/12
to
> did it. I wrote the story athttp://www.visualforth.blogspot.comand I
> am proud that vF is mentioned as Forth for Windows athttp://keeh.net/page1/files/archive-27-december-2009.html- two links
> below Chuck Moore.
>
> I encourage you to use your time to analyze your needs and write a
> list of suggestions and proposals of what can be done to make Forth
> the right programming language and/or environment for the time we live
> in and for our future. I am sure it is worth it.
>
> Best Regards,
> Dirk.

Thank you for your kind and encouraging words, Dirk. However, just to
be clear, this is not *my* story, it is a story that I found in Forth
Dimensions, written by Allen Cekorich. If I get a chance, I'll see if
I can track him down and invite his comments here on CLF.

I'm also very glad to hear that your cancer treatment was sucessful.
I'm very very pleased indeed to hear that. Unfortunately, my mother is
going through the same thing right now, however, her long-term
prognosis does not look so good.

Also, please accept my congratulations on the MSP430 Forth project.
I'm very excited indeed by that project. At the moment, my own hobby
retro Forth system is taking a lot of time (updating the website and
writing extensions for it) but your project is next on my list to look
at!

Regards

Mark

hwf...@gmail.com

unread,
Apr 5, 2012, 12:59:27 PM4/5/12
to era...@forth.com
On Wednesday, April 4, 2012 2:17:32 PM UTC-7, Elizabeth D. Rather wrote:
>
> An engineer who is capable and experienced in your application domain
> can learn Forth far quicker than a Forth programmer with a different
> background can learn your application domain, so the lack of Forth
> programmers "standing on every corner" (as one recruiter put it) is not
> a major obstacle. And having learned Forth, that engineer will have all
> the power and flexibility that Forth provides. Many of our customers
> have gone that route, to great success.
>
I would like to see you (or you and Ned) write a "Why Forth" paper/article based on this rationale. Our industry is hurting for lack of Forth exposure.

-Brad

Fanzo

unread,
Apr 5, 2012, 1:49:09 PM4/5/12
to
Mark Wills wrote:
> ...but is it the story of Forth?
>
> Enjoy.
> ---------------------------------------------------------
>
> A Forth Story
> Allen Cekorich
> Walnut Creek, California
> Forth Dimensions, July/August 1995
>
> In 1975, I was fresh out of college with a bachelors degree in physics


Thank you for this interesting story

dirk....@usa.net

unread,
Apr 5, 2012, 11:17:08 PM4/5/12
to di...@bruehlconsult.com
On 5 Apr., 03:47, Paul Rubin <no.em...@nospam.invalid> wrote:
Paul,
When reading your lines it came to me, what is missing: the spirit of
Forth.

Your example is just an example of the right factoring in Forth:

As a Forth programmer, when you are done, you are sitting in a control
booth operating a fleet of remote controlled tractors through a
microwave satellite feed - all connected together by Forth words,
while deep below, just above the primitives, Forth words are planting
potatoes in the raw soil as you would do it with your bare hands.

Again and again I recognize that people don't absorb the power of
Forth. May be they can't.
I did. And Forth is always inspiring to me. I can and I could do
things with Forth which I couldn't have done otherwise, again and
again...

Don't give up!
Never give up!

Cheers,
Dirk.

dirk....@usa.net

unread,
Apr 5, 2012, 11:51:24 PM4/5/12
to
A decade ago Bernd Paysan wrote "I Love Forth", Source:
http://www.eetimes.com/discussion/parity-bit/4023841/I-Love-Forth

This was after Jack Ganssle, the embedded systems Guru, wrote "I hate
Forth" - source:
http://eetimes.com/discussion/embedded-pulse/4023811/I-Hate-Forth

To me it is clear why some people hate Forth: Forth is devaluing their
knowledge.

Scientists and working people are able to solve their problems by
themselves, using Forth, they don't have to explain their knowledge to
experts to enable expensive experts to do the work they could do using
Forth by themselves.

I agree, there can't be written enough about projects done in Forth.

Cheers,
Dirk.

P.M.Lawrence

unread,
Apr 6, 2012, 2:47:59 AM4/6/12
to
I'm not trying to quibble, but that metaphor of "planting potatoes in
the raw soil with your bare hands"... Even my Irish forebears used
spades (and a shovel is definitely the WRONG tool for the job). But
what they actually did when they had to was even more remarkable, and
may provide a better metaphor for Forth. Oral tradition told me that,
when they were too poor to get the right tools, they "rolled their
own", improvising spades from suitably shaped pieces of wood that they
furnished with improvised blades made from old tin cans beaten into
shape with rocks and slotted into locking notches (think cotter pin,
with the metal wrapping around the end of the wood). Clearly that
tradition goes back no earlier than the nineteenth century, but there
it is for what it's worth. P.M.Lawrence.

Mark Wills

unread,
Apr 6, 2012, 10:02:24 AM4/6/12
to
> explore designs that felt right to me. I did...
>
> read more »

Folks,

I managed to contact Allen (the author of the above story). See below.

Regards

Mark.

-----------

Date: 4/05/2012

Subject: Forth

I keep an old XP computer in my garage that runs my Forth system but
have not touched it in many years. Windows 7 would not allow it to run
so I stopped using it. In fact, I stopped programming altogether after
35 years of coding. Forth is special and I am sad that most others
cannot experience the freedom it gives in solving problems. I met
Charles Moore once and Forth Inc offered me a job, I declined. Forth
is the best language I ever knew, but like Mr Moore, it is too much an
individual to suceed in the mass market. Thanks for contacting me.
Allen

Steve Graham

unread,
Apr 6, 2012, 11:15:50 AM4/6/12
to
...

>
> Folks,
>
> I managed to contact Allen (the author of the above story). See below.
>
> Regards
>
> Mark.
>
> -----------
>
> Date: 4/05/2012
>
> Subject: Forth
>
> I keep an old XP computer in my garage that runs my Forth system but
> have not touched it in many years. Windows 7 would not allow it to run
> so I stopped using it. In fact, I stopped programming altogether after
> 35 years of coding. Forth is special and I am sad that most others
> cannot experience the freedom it gives in solving problems. I met
> Charles Moore once and Forth Inc offered me a job, I declined. Forth
> is the best language I ever knew, but like Mr Moore, it is too much an
> individual to suceed in the mass market. Thanks for contacting me.
> Allen

Thanks for the story and followup.

Steve

Wasif Hyder

unread,
Apr 8, 2012, 2:10:31 PM4/8/12
to
Try Lisp ?

Maybe it's wortha shot ?

ral...@picrad.com

unread,
Nov 25, 2017, 5:00:08 PM11/25/17
to
I'm curious what your thoughts are on Lisp - it's also a language where you program by extending the language.

dxf...@gmail.com

unread,
Nov 27, 2017, 5:14:37 AM11/27/17
to
While a 'believer' may hold that opinion, I see
no evidence to suggest industry does. Forth has
been around long enough for industry to determine
its worth. Testimonials will no longer work.

minf...@arcor.de

unread,
Nov 27, 2017, 7:28:40 AM11/27/17
to
One could even go as far as that Forth isn't a programming language any more
(except in some exotic use cases).

Nevertheless it is still a useful tool in the belt
(for some exotic use cases)

Analogy: nobody really needs Swiss army knives
(but sometimes they are just so handy)

foxaudio...@gmail.com

unread,
Nov 27, 2017, 7:30:24 AM11/27/17
to
On Thursday, April 5, 2012 at 12:59:27 PM UTC-4, Brad Eckert wrote:
> On Wednesday, April 4, 2012 2:17:32 PM UTC-7, Elizabeth D. Rather wrote:
> >
> > An engineer who is capable and experienced in your application domain
<snip>

> I would like to see you (or you and Ned) write a "Why Forth" paper/article based on this rationale. Our industry is hurting for lack of Forth exposure.
>
> -Brad

Here in the Great White North we have had 3 high profile software failures in 3 different government departments. (Gov't payroll fiasco with Phoenix is unresolved after almost 1 year and
timeline for fix is unknown, $1B attempt/fail/halt to digitize health care records, Provincial website
for auto licensing is unreliable and can't keep up with demand)

I won't be so naive to think that Forth would have fixed everything as there were many "pointy
hair" (Dilbert reference) people involved in the decisions.

From your last statement I find myself wondering...

1. Has the attempt by the S/W industry to remove low level detail from the programming
environment created a world where people are working on enterprise level projects with little
understanding of the impact of their decisions, resulting in systems that are not meeting expectation or some cases completely failing?

2. Could Forth in software education provide some low level exposure and perhaps improve the current situation? (perhaps you meant the embedded industry only)

My old man memory remembers using very reliable systems written in Assembler that used far fewer resources and seldom crashed, albeit they tried to do less too.

BF

Or perhaps this just means Canada has too many crappy systems people.
( Initial Obamacare website comes to mind.
Large expensive Canadian company at the helm)

Lars Brinkhoff

unread,
Nov 27, 2017, 7:48:48 AM11/27/17
to
minf...@arcor.de writes:
> One could even go as far as that Forth isn't a programming language
> any more (except in some exotic use cases).

It seems to me it would be quite hard to make this argument.
Please elaborate.

NN

unread,
Nov 27, 2017, 8:17:40 AM11/27/17
to
First you cut and paste an article from 1995

Then you paste a response from 2012.

I feel I am missing some detail that seems to be obvious to everyone else but me. But what ?

NN

unread,
Nov 27, 2017, 8:27:38 AM11/27/17
to
Software failures happen. For England, I recall was the NHS. 10bn wasted.

Although blame was placed on poor management and contractual wrangles, I suspect the true blame lies in (a) it's not their money and (b) no accountability.

Knowledge of forth ( or substitute your fave langauge) would make an iota of difference.

Cecil Bayona

unread,
Nov 27, 2017, 11:06:36 AM11/27/17
to
I've read where it's compared to a list processor which is true, by
others its compared to a fancy macro processor whose final output is
machine code or a code list, also true. Those descriptions does not
disqualify if from being a proper computer language, a translator from
computer commands in text into machine actions.

--
Cecil - k5nwa

NN

unread,
Nov 27, 2017, 11:41:52 AM11/27/17
to

I meant to write:

Knowledge of forth ( or substitute your fave langauge) would NOT make an iota of difference.

minf...@arcor.de

unread,
Nov 27, 2017, 3:54:03 PM11/27/17
to
For sure this somewhat ironic statement (to Forthers) is debateable.

But the discipline of programming and computer science in general evolves
at such a rapid pace, that the distance to the rather static Forth niche
is getting ever larger.

So from non-Forther perspective it has become a toy language in the family
of brainfuck et al.

john

unread,
Nov 27, 2017, 6:16:28 PM11/27/17
to
In article <927a2386-2b37-4577...@googlegroups.com>,
minf...@arcor.de says...
Don't think "language" think "lego"



--

john

=========================
http://johntech.co.uk
=========================

lsng....@gmail.com

unread,
Nov 27, 2017, 11:16:51 PM11/27/17
to
A relevant idea for your reference:

Forth as Application Programming Interface Shell (APISH)

https://groups.google.com/forum/#!topic/comp.lang.forth/LE9EflOOMGA

On Tuesday, November 28, 2017 at 4:54:03 AM UTC+8, minf...@arcor.de wrote:
> Am Montag, 27. November 2017 13:48:48 UTC+1 schrieb Lars Brinkhoff:

Lars Brinkhoff

unread,
Nov 28, 2017, 1:46:40 AM11/28/17
to
minf...@arcor.de wrote:
>> > One could even go as far as that Forth isn't a programming language
>> > any more (except in some exotic use cases).
>> It seems to me it would be quite hard to make this argument.
> But the discipline of programming and computer science in general
> evolves at such a rapid pace, that the distance to the rather static
> Forth niche is getting ever larger.

Sure, but also consider that many programmers are increasingly uneasy
about this widening distance. There are layers upon layers of
languages, libraries, compilers, frameworks, etc.

Also, assembly languages are at a lower (or similar) level than Forth
and still programming languages.

foxaudio...@gmail.com

unread,
Nov 28, 2017, 7:55:32 AM11/28/17
to
On Monday, November 27, 2017 at 11:41:52 AM UTC-5, NN wrote:
> I meant to write:
>
> Knowledge of forth ( or substitute your fave langauge) would NOT make an iota of difference.

Thanks for the clarification. I assumed that is what you meant.

I concur 100% with your "not their money and "no accountability" affecting attitudes in gov't
contract work.

That begs the question, if the contract contained a "clawback" clause such that a portion of the
fees must be returned if the system fails to meet specification, would these projects have different
outcomes? It is possible that they would not, if the people "in charge" don't really understand
the errors or low level decisions early on make it impossible to achieve the design goals.

Of course "meet specification" is a lawyers dream so it would still cost the taxpayer in the end.
Just paid to a different entity.

B
Reply all
Reply to author