Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!ames!haven!uvaarpa!hudson!vivaldi!pmy From: pmy@vivaldi.acc.virginia.edu (Pete Yadlowsky) Newsgroups: comp.lang.forth Subject: Re: Forth Pre-Compier Message-ID: <535@hudson.acc.virginia.edu> Date: 31 Aug 88 23:24:02 GMT References: <8808121826.AA23206@jade.berkeley.edu> <1575@crete.cs.glasgow.ac.uk> <6882@well.UUCP> <1581@crete.cs.glasgow.ac.uk> <4057@juniper.uucp> <472@umn-d-ub.D.UMN.EDU> <1593@crete.cs.glasgow.ac.uk> Sender: news@hudson.acc.virginia.edu Reply-To: pmy@vivaldi.acc.Virginia.EDU (Pete Yadlowsky) Organization: University of Virginia, Charlottesville Lines: 51 In article <1593@crete.cs.glasgow.ac.uk> orr%cs.glasgow.ac.uk@ucl.nss.ac.uk (Fraser Orr) writes: >Need I say that you could >have the best of both worlds if you wrote a preprocessor that RPNed your >arithmetic and control structures? At the same time you could add all the >other nice things - structures, type checking, at least optional parameter >lists, my nice implicit parameter passing stuff etc,etc,etc. Baggage, baggage and more baggage. Type checking?! *gag* I don't want some uppity compiler protecting me from myself and telling me how I may and may not use my computer. That stuff's fine for beginners, but when it's time to cut loose and actually put the machine to work... Incidentally, some Forths (JForth, for the Amiga, for instance) do provide C-like struct syntax. I only use this, though, to facilitate system calls, as the Amiga is very C-oriented. Forth is, more than anything else, a language used to implement languages... a meta-language. No skilled Forth programmer writes applications in raw Forth. S/he uses it to build a custom language that suits the application; that is, in fact, the application itself. If that means postfix arithmetic, fine, throw it in there. If it requires some sort of data structure, create it. But why should the system and the programmer have to lug around *all* of this "nice" traditional stuff when it is unnecessary and inappropriate? I think most of your complaints about Forth are aimed at its bare-metal bottom level. But, as I've said, the seasoned Forth programmer gets away from this as quickly as possible by building ever higher levels of abstraction and developing conceptually useful vocabularies. With traditional compilers, however, the programmer is stuck with the compiler's single vocabulary/syntax, so it had better be rich and sufficiently complex. You seem to be regarding Forth, through tradition-colored glasses, as yet another language with fixed vocabulary and syntax. In skilled hands, it is not. If it was, it would indeed be as objectionable as you say. Somehow I think this has all been said a hundred times already. Sorry for any redundancy. >Sorry if your getting bored hearing me saying the same thing over and over >and over and over again, but really I've yet to here a serious objection >to it [a set of traditional constructs]. Don't want it. Don't need it. Don't want to pay for it (with money, time, memory, or undue complexity). Is this serious enough? Peter M. Yadlowsky Academic Computing Center University of Virginia pmy@vivaldi.acc.Virginia.EDU