Re: The Promise of Forth



Jonah Thomas wrote:
John Doty <jpd@xxxxxxxxxxxxxxxxxxxxxxx> wrote:

Should 18th century physicists have abandoned Newtonian mechanics and returned to a belief in Aristotelian physics when Berkeley showed that

it was based on fallacious reasoning? Straight answer, no evasion
please.
There were more than two choices available.

Your language reflects your ideas. When the language contains logical
contraditions, it's sloppy.

Yes, but that can simply reflect the difficulty with language. Einstein insisted that his ideas were visual, not linguistic. Language has its limits.

Usually what has happened is that you've
given the same names to two different things,

Are there different things? Language insists on dividing continua.

and you use them as if
they were the same thing. That's a clue to how to refine your language.

It's an infinitely long road.

Give the different things different names and the contradictions go
away. The language gets easier to use, because you don't have to "just
know" which times the names refer to one thing and which times to
another.

It requires an infinite vocabulary, but we are finite creatures.


This is what traditional logic is good for. It provides the evidence
that there are problems that need to be cleared up, and it provides
clear hints about just what the problems involve. Sometimes the problems
can't be fixed because the thinking was wrong.

What should have been done about Newton was what was eventually actually
done. They fixed up the problems and showed where Newton's ideas worked
and where they didn't.

Who are "they"? In physics, we still use use the 18th century approach to calculus. Sure, we let the math department expose the freshmen to δ-ε proofs and all that, but that's really just to immunize them. It also keeps the mathematicians from getting too upset with us. But then we go ahead and teach physics without that baggage. Few professional physicists remember how the δ-ε method works: it's not a particularly useful tool. Calculus works fine without it.

As it turned out, the circumstances that didn't
work out tended to be things that never come up in practice so that was
all OK. But it might not have been. They were correct to check.

The reality check was in the experiments, not the logic. To be sure, the elucidation of these issues by the 19th century analysts is a fascinating story of puzzle solving. But it had no significant impact on physics.

Besides, what was checked? As Berkeley would correctly tell you, logical argument is based on faith. Given logic's history of failure outside the world of formal mathematical proof, I hardly see how fixing up the logic of calculus should have any direct significance for physics. Physics needs a firmer foundation.


You have done this "Either it's one or the other" in several contexts
now. You consider the existing conventional wisdom and then you consider
one new idea, and you talk as if one or the other of them must be right.
This is unscientific. If you show that the CW is wrong, it does not mean
that any particular alternative must be right.

Unscientific? *All* scientific inquiry is like this. Science proceeds by falsification. One can *never* in science prove a hypothesis is true.

They could easily both be
wrong.

Happens all the time. But what can you do except look for a better one?

And if we have two hypotheses that fit the existing facts, we
don't need to choose between them. At that point it's good to look for
predictions that they make differently, and then go out and see what
actually happens. If one set of predictions fails, then that hypothesis
is wrong -- though there might be an easy way to patch it up to fit. If
both sets of predictions fail then we have something interesting.

Yep. Now *that's* science!


If you define something named A, then you want the definition to be nice
and clear. If you get A and ~A at the same time, it means you haven't
defined A clearly enough after all.

The law of the excluded middle. Classical logic's most powerful and sloppy postulate. Not always present in modern formal logics, and often violated by physical models of logic (what happens if you connect the output of a logic inverter to its input?).

But it's a choice between A and ~A.
It isn't a definite choice between A and B.

Bohr would vehemently disagree.


Here's how I've understood your basic argument: If Forth was the best
computer language it would have taken over the computing world by now.

Gross exaggeration of my position.

It has not done so. So it must have one or more fatal flaws that keep it
from being great.

Consider the history. Forth *was* a widely respected and used language circa 1980. But C ate its lunch. And the explanations that do not involve flaws in Forth (including its culture) don't work.

The obvious conclusion from that is that we should
form a harmonious group that searches through everything we know about
Forth and other languages to identify Forths Fatal Flaws (appreviated
3F). Once we get a consensus what the 3Fs are then we can harmoniously
cooperate to fix them. This will give us a new language that we can
label "Forth" which will inevitably take over the world.

Nah. We should be *experimenting*. We should be publishing stuff people will use (not yet another Sudoku solver). "Underground Forths are needed."


Various people have proposed other things that have kept Forth from
taking over the world. You have rejected each of them on dubious
grounds. For example, there was the argument that Forth has never gotten
enough institutional support. You said that this couldn't have been The
Reason because languages that got the *most* institutional support
(PL/1, Ada, etc) have tended to fail and be replaced by other languages
that got less institutional support like C and Java. But consider --
would you be certain that Forth has only one Fatal Flaw, and that only
Forth has one? Perhaps the languages that got the most institutional
support happened to have fatal flaws of their own that kept them from
great success despite that support.

Sure. You ever program in PL/I? Ugh! But then, there are also many examples of languages with weak early institutional support like C and Python that have done very well.

While C and Java got *enough*
support that the lack of it didn't stop them.

C? AT&T's support for C came *after* its success was clear. Before that, it was just a toy to keep their CS research group happy and productive.

And Forth got none.

Forth had lots of institutional support in astronomy: why didn't it continue to thrive there?

The history you're trying to sell here is not what I experienced. Indeed, if Forth had not been a significant player in astronomy, I'm sure I never would have used it.

I
remember when Forthers were tremendously excited because Harris
Semiconductor was making the RTX chips. It wasn't just that there were
going to be 16-bit specialty Forth chips. It was that Harris was
providing Forth with its first ever institutional support. And then
Harris mothballed the RTX. Forth has survived with no overt
institutional support whatsoever, except for what Harris provided.
Whatever institutional support Forth has gotten has come from classified
military programs and secret business ventures.

Pure nonsense. Was it just hobbyists using Forth at MIT, SAO, NRAO, KPNO, etc.?

Arguing that such
support is not necessary is like arguing that water is not necessary for
human survival because some people with plenty of water have died of
exposure while others with less water survived.

That's not my argument. Forth got plenty of early support, similar to what C got but earlier.


More important, you have championed the idea that computer languages
should fit in with the ways that people are predisposed to think. But
you violated that idea by your presentation. What you're saying would be
fine if you collected a bunch of guys who used to use Forth and who were
kind of nostalgic for it, who had to quit using it because it didn't
work for them. They'd be predisposed to believe in 3F. They might get
all fired up to remove the 3Fs and create the language that will take
over the world the way Forth should have. But apart from logic or truth,
remember the old DC saying, "Where you stand depends on where you sit."
Several of us are Forth vendors. It would be silly for them to believe
in 3F. Many of us think of ourselves as Forth programmers. Why would we
want to believe in 3F? You seem to believe that agreeing about 3F is the
only way we could ever go on to the second step.

But those who've given up think even less of its future. It's rocky here, but it's bare lava there.


But what if you instead presented interesting ideas. Could we build an
extension onto Forth that wasn't postfix? Of course we could. We mostly
haven't bothered because we haven't much wanted to. If we had such a
thing we could measure how much extra complexity it added to a Forth
compiler. We wouldn't have to argue about whether it would be too
complex, we could measure it. We could measure the slowdown in runtime
and the slowdown in compile-time. There might be people who'd find those
penalties acceptable. After all, there are people who use scripting
languages that are 10 times slower, or even 50 times slower, and they
don't complain. If infix or whatever only doubled execution times we'd
be getting off cheap. And nobody has to use them. If you got some
customers who were interested in that sort of thing then you might get
Forth vendors competing to see who can best provide it. They don't have
to say they believe in 3F first. They want to create things that give
them income and bragging rights. Give them the idea that customers would
value a particular change (that they can add on top of their Forths) and
they'll be happy to look at ways to do it. You don't have to persuade us
about 3F first.

You're going down the MAGIC/L road. It almost worked for Loki. What was missing there? Can it be fixed? What can we learn from their failure and other successes? I think Python is telling us a lot about libraries.


We don't have to agree about what's worth doing. As Bruce McFarling has
said, the more different things we try the more likely one of them
works.

"Underground Forths are needed".

It's got to be easier to persuade Forthers to look at interesting
things that could be done with Forth than it is to persuade them that
some of the things that have not yet been done with Forth are Fatal
Flaws because they haven't been done yet.

Please! Give up the worthless side issue of Fatal Flaws and tell us
about things we can try out.

"Underground Forths are needed". I'm very pleased by the recent StrongForth discussion, as it seems to me that the StrongForth approach fixes some major issues that prevent traditional Forth from being used as a reasonable foundation for a user-friendly language.

--
John Doty, Noqsi Aerospace, Ltd.
http://www.noqsi.com/
--
History teaches that logical consistency is neither sufficient nor necessary to establish practical, real world truth. Those who attempt to use logic for that purpose are abusing it.
.



Relevant Pages

  • Re: Qualia Question
    ... >> define words in language any way you want. ... Prior to Newton we had no way to anchor garden ... creates an explanatory gap between the physical and mental. ... Just as physics wants to ...
    (comp.ai.philosophy)
  • The Meaning of Metaphysics
    ... The meaning of metaphysics ... A metalanguage is still a language, ... metaphysics should take as honorable a place in physics as ...
    (sci.bio.evolution)
  • Re: Explaining Schroedingers equation
    ... exhibit laws of language. ... if we wish to understand quantum theory ... Hermitian operators correspond to physical measurement processes such ... questions - about your view of physics and also about the clarity of your ...
    (sci.physics.research)
  • Re: The Promise of Forth
    ... Your language reflects your ideas. ... Forth and other languages to identify Forths Fatal Flaws (appreviated ... Reason because languages that got the *most* institutional support ... remember when Forthers were tremendously excited because Harris ...
    (comp.lang.forth)
  • Re: OT: Schools Cut Back Subjects to Push Reading and Math
    ... of language learning from year 1 in the state sector. ... although there are also examples of teaching Physics, Mathematics, ... Courses for students preparing for teaching in a foreign ...
    (alt.guitar.amps)