Re: part 21 asserts forth best for small memory systems, would lisp be better in non small mem?



John Doty <jpd@xxxxxxxxxxxxxxxxxxxxxxx> wrote:

My argument is:

1. There is little published shareable Forth code, relative to other
languages. This seems beyond dispute.

I doubt this has been disputed. It might possibly be claimed that Forth
code can be written so compactly that 10Kbytes of Forth code does as
much as 100Kbytes of say C code. No one but me has made that argument
and I wouldn't defend it strongly, and even a factor of 10 wouldn't make
much difference.

2. You and others asserted that this is not because Forth code is not
shareable, but because shareable code is proprietary, and that there
is plenty of such code.

I asserted that with Forth having 0.1% of the representation, with other
things equal we should expect 0.1% of the public shareable code to be in
Forth. I haven't seen a claim how much that really is. Is it really 0.1%
or 0.01% or what? How would you measure it?

Further, I asserted that the value of public code probably follows a
power law where the best of it is very very good and the major part of
it is not worth having. If that's true, having 1000 times as much would
make a giant difference. Say the best 1000 shared libraries or
applications account for 99.9999% of the usage. And Forth is used 1/1000
of the time. Unless Forth tended to result in far superior programs it
would be about a 36% chance that none of the top 1000 examples would be
in Forth. Why would you expect Forth to stand out?

This requires that somehow Forth, unlike other programming languages,
produces shareable code only if code is not to be published. If this
is true, it indicates weaknesses in Forth. Weaknesses, if correctly
identified, may often be repaired.

Not so. Forth could be producing mostly nonshared code for historical
reasons. The most popular languages could owe much of their popularity
to a bandwagon effect that doesn't stem from any particular virtue of
the languages. Maybe next year it will be Forth's turn in the barrel.
Stranger things have happened.

If youa're looking for weaknesses in Forth, why not start with
weaknesses that have left Forth with 0.1% of the popularity in general?
Those would include not having heavy institutional backing (which Java
had from Sun at a time when a lot of people were looking for ways to
simultaneously work with and move away from MicroSoft). Not having a
single official nonproprietary version (which Python and Ruby and Lua
have). Not having any of the generally-agreed best-practice methods of
the last 20 years as standard. (Those include strong typing, OO,
transaction-oriented, etc. Forth is however mostly structured.) Etc.

If you could find a way to make Forth 100 times as popular as it is now,
it would probably also get 100 times as much shared code as a result.
Likely more.

You haven't established that Forth has a smaller proportion of published
code than other languages. It could be true, but we don't have any
numbers yet. So your argument could simply boil down to:

Forth is only the 42nd most popular computer language. Therefore there's
something wrong with it or it would be more popular.

A whole lot like: If you're so smart, why aren't you rich?

You haven't even tried
to establish the link.

You want a *causal* link? Elizabeth's assertion that Forth code
sharing requires rigid standards and strong management will do for
now. That identifies a debilitating weakness (or more likely, multiple

weaknesses). But that's probably not the whole story.

Why do you take her word for it? Her experience is that she can, has,
and does lead large successful Forth projects using rigid standards and
strong management. That's her experience, she knows something that
works. I know of one example that was run more loosely and didn't work
-- ValDocs, a very long time ago. Maybe Elizabeth knows of other big
failures and knows why they failed, but I doubt she has much direct
experience -- she doesn't do poorly-led projects that fail.

If an expert told you that in his extensive experience internal
combustion engines work very well for land vehicles, would you then
immediately say there's something wrong with internal combustion engines
because they can't be used at sea or in the air?

I cannot understand how you can fail to see the paucity of published
Forth as evidence of a serious problem with Forth.

I'd see being #42 with a popularity rating of 0.1% as a serious problem,
yes. I wouldn't automatically assume that the problem is with any
particular internals of the language. As I said before, one of the big
problems was probably the Forth83 standard, which split the community.
That doesn't explain the lack of exponential growth since the declines
in 1984-1985, but it was likely a big factor then.
.



Relevant Pages

  • Re: part 21 asserts forth best for small memory systems, would lisp be better in non small mem?
    ... For the popular languages I can think of, the initial very small user base published enough code to attract more users, setting up positive feedback that eventually made the language popular. ... Weaknesses, if correctly identified, may often be repaired. ... and does lead large successful Forth projects using rigid standards and ...
    (comp.lang.forth)
  • ADA Popularity Discussion Request
    ... ADA is not as popular as to it is ... Perl (well I use it at work, for legacy reasons of taking over ... least one of those languages. ... why is ADA not as popular as the above languages to the ...
    (comp.lang.ada)
  • googling for fun (and profit...? naah!-)
    ... python ruby perl caml java haskell lisp eiffel sml scheme ... with the programming languages as I thought of them. ... programming isn't as popular a term as I'd have thought (but still, ...
    (comp.lang.python)
  • Re: part 21 asserts forth best for small memory systems, would lisp be better in non small mem?
    ... This requires that somehow Forth, unlike other programming languages, produces shareable code only if code is not to be published. ... Weaknesses, if correctly identified, may often be repaired. ... assertion that "Forth can only produce proprietary code" is not grounded in logic. ... project management, which apply in all kinds of projects with all kinds of languages. ...
    (comp.lang.forth)
  • Re: Languages which turned corners
    ... The impressions I have had in the last few years is that Fortran is on ... Fortran for sure is useful in its niche, ... languages with lower popularity, and not much ups and downs. ... it's definitely a sign that a sufficiently popular niche can ...
    (comp.lang.forth)