Path: utzoo!utgpu!water!watmath!clyde!att!rutgers!ucsd!ames!amdcad!sun!pitstop!sundc!seismo!uunet!mcvax!ukc!strath-cs!glasgow!orr
From: orr@cs.glasgow.ac.uk (Fraser Orr)
Newsgroups: comp.lang.forth
Subject: Re: Forth "Pre-Compiler"
Keywords: AT&T, Utilities, Baden, Editor, Yiddish_Proverbs
Message-ID: <1573@crete.cs.glasgow.ac.uk>
Date: 18 Aug 88 13:15:35 GMT
References: <8808032106.AA01436@jade.berkeley.edu> <1563@crete.cs.glasgow.ac.uk> <2651@pt.cs.cmu.edu> <1567@crete.cs.glasgow.ac.uk> <6826@well.UUCP>
Reply-To: orr%cs.glasgow.ac.uk@nss.ucl.ac.uk (Fraser Orr)
Organization: Comp Sci, Glasgow Univ, Scotland
Lines: 80

In article <6826@well.UUCP> jax@well.UUCP (Jack J. Woehr) writes:
>
>	Good sport and loyal comp.lang.forth poster Fraser goes on
>to compare a short stack of 8 Laxen & Perry F83 utilities to 39 unix
>utilities.
>
>	Straw dogs. Some utils mentioned like   vi   are much harder to
>use than the minimalist line editor! Certainly the Wil Baden full
>screen editor in F83X,F83S is a masterpiece of programming, in Forth
>or any other language.
>

Hmmh, I was tempted to redirect follow ups to comp.editors and say
something like I *like* vi, and can use it *very* efficiently. But lets
not start an editor war (in comp.lang.forth anyway), especially since I've
never used you favorite editor.

>	Other unix utils are easily mimicked intepretively in Forth,
>and do not require inclusion in a "master set" of compile utils.
>Utils performing passes on block files analogous to, say,   grep  or
>   wc    can be entered at the keyboard, and are, by professional forth
>programmers. These types of utils are personalized and given functional
>relevance not by -abcd command line options, but by being re-written
>each time they are used! That's the kind of rapid-flow, free form
>doggie Forth is!

I can write C programs to do things like grep and wc, and it doesn't
require too much effort. Why don't I? coz some smart cogger has done it
before, so I don't need to make the effort. Sure there is all this command
line option stuff, but on all the tools that I use regularly I can remember
all the important options, and I bet you that those I can't remember I can
look up faster than you can write a grep program in forth.

Hubert Matthews says in his article (sorry I'm not quoting, but I never did
work out how to follow up to two articles in Pnews!) that having a lot of
different utilities was not necessarilly a good idea, and I've got to agree,
but the utilities I mentioned really are pretty cohesive, so by saying 39
(or however many) utilities, I am saying 39 useful functions, vs 8 useful
functions.

It is my ambition, to save people having to remember command names, to write
a unix utility called "command" that does everything you want.E.g.,

	command -ls

lists the current directory,

	command -cat filename | command -wc -l

copies the file named "filename" into a pipe and counts the number of lines
etc, What do you think?:->

>
>	Lastly, if Forth had had twenty-odd years of corporate sponsorship
>from a mega-billion $ (thousand million to our friends on the other side
>of the Atlantic River) conglomerate, there would be enough utils written
>and canonized to bury your 12Meg mainframe as deep as a Celtic king in
>a peat bog!
>

"Ifs" are wonderful things. Forth doesn't have this kind of sponsorship.
I'm interested in what I can do, not in what might have been.
The fact is that UNIX is MUCH better tooled than any forth environment than
I have ever seen (which admitedly isn't a lot), or heard of (and I presume
you are telling me about the best there is.)

Someone else mentioned on this subject (I think it was Hubert again) that
with all these megabytes of code the system must be riddled with bugs. Anyone
who has used UNIX will know that this is true. The reason, coz UNIX is written
in a tacky programming language - C. Now to say that C is tacky is not to say
that forth is less tacky than C. I have in previous postings stated that I
think of forth as a reasonably pleasant assembler language. I reckon that in a
UNIX sized system written in forth, programmed by the same types who wrote UNIX
would be substantially more bug ridden than UNIX, would probably be much harder
to use (because the RPN thing would pervade the whole system) and would have
taken much longer to write. This is of course only my opinion, and I have no
facts whatsoever to back this up, but that never stopped me before <^:

Regards,
===Fraser Orr (orr%cs.glasgow.ac.uk@nss.ucl.ac.uk)