Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!iuvax!rutgers!apple!bionet!ames!hc!lanl!cmcl2!acf3!sabbagh From: sabbagh@acf3.NYU.EDU (sabbagh) Newsgroups: comp.lang.forth Subject: Re: forth standard Keywords: gripes, observations Message-ID: <1077@acf3.NYU.EDU> Date: 24 Jul 89 14:18:04 GMT References: <7224@medusa.cs.purdue.edu> Reply-To: sabbagh@acf3.UUCP () Organization: New York University Lines: 29 In article <7224@medusa.cs.purdue.edu> bouma@cs.purdue.EDU (William J. Bouma) writes: > > People want a language that is flexible and self documenting. For > the most part, forth is that way. But there are stupid and needless > exceptions. For example, DO seems quite inflexible in requiring you > to use I and J as the loop variables. And if you want to nest 3 deep > you have to define a new word which indexes directly into a system > stack. Why not just say DO I ... where I could be any variable name? Actually, I agree that, in many ways, FORTH standards fail to address high level issues (32+ bit implementations, OS co-existence), but I have to argue about the inflexibility of DO. Many of the newer ALGOL-based languages, most notably Ada, have struggled with the issue of loop indexing. In general, it is considered very bad to have an index that can be read outside the loop. In languages like C, the programmer usually declares a local variable named i,j, etc., used only for loop indexing. I like the fact that FORTH has basically eliminated this trouble spot. Snap! (The sound of the last button on my asbestos suit...) Hadil G. Sabbagh E-mail: sabbagh@csd27.nyu.edu Voice: (212) 998-3285 Snail: Courant Institute of Math. Sci. 251 Mercer St. New York,NY 10012 186,282 miles per second -- it's not just a good idea, it's the law!