Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!udel!rochester!pt.cs.cmu.edu!dsl.pitt.edu!pitt!willett!dwp From: dwp@willett.pgh.pa.us (Doug Philips) Newsgroups: comp.lang.forth Subject: Re: What makes Forth Forth Message-ID: <2084.UUL1.3#5129@willett.pgh.pa.us> Date: 10 Dec 90 00:31:18 GMT References: <1408@acf5.NYU.EDU> Organization: String, Scotch tape, and Paperclips. (in Pgh, PA) Lines: 46 In <1408@acf5.NYU.EDU>, sabbagh@acf5.NYU.EDU (sabbagh) writes: > I believe these remarks hold for Ada and Smalltalk as well. [...] > It is true that you can overload the semantics of operators in C++, however, > there are two problems: 1)you can't overload the _syntax_ and > 2) you can't define new operators. [...] > How does Forth overcome this? Simple: there is NO PRECEDENCE. Forth is the > true equal opportunity language: IT MAKES NO ASSUMPTIONS ABOUT WHAT YOU MEAN. I know that SmallTalk has no precendence/syntax difference from Forth. I don't know what, if any, limitations it places on user definable names. I suspect that it doesn't care, but I can't remember anymore. > IMHO the thing that Forth implementations need the most is some > way to manage large dictionaries! That's what makes Forth inaccessible > to most people. The documentation requirements are much higher; not > documenting acutal program, since Forth programs are self-documenting, but > _systems_ documentation, i.e., what it does, which are interface words and > which are implementation, etc. I agree with that. The hardest problem I have is in memorizing the dictionary. Handy-Dandy reference cards are invaluable. Two are really needed: One sorted by word name to answer the 'What does do' questions. One sorted by catagory to answer the 'Now what word does ' questions. > Frankly, neither have I. I can only say that Postscript was not really > designed for humans to write programs in, and Forth was. I have discovered > that intellectual purity in computer language design is _far_ less important > than pragmatic issues: can I write a program in this language. Hmm... Being a novice at both Forth and PostScript, I see the same problems in learning either language: Vocabulary explosion. The "Red" postscript book is organized in a way I find useful. How many Forth systems generators can afford to put that kind of effort into a PD or ShareWare Forth? I dispute your point about "which can I write programs in" because it smacks of the "law of least astonishment." For whom? I will certainly agree that the application system you generate with the language should be easy for non-programmers to use (i.e. use the bletchiferous prefix defining words). For programmers who are going to make an investment in really learning the language, the number of special cases is more important than any other arbitrary decisions (bytes/words/longs per cell, Direct, Indirect, native code, etc.). -Doug --- Preferred: dwp@willett.pgh.pa.us Ok: {pitt,sei,uunet}!willett!dwp