Path: utzoo!attcan!uunet!tut.cis.ohio-state.edu!purdue!ames!mailrus!cornell!uw-beaver!rice!titan!preston From: preston@titan.rice.edu (Preston Briggs) Newsgroups: comp.lang.misc Subject: Re: What I'd really like to see in an if-statement... Message-ID: <536@brazos.Rice.edu> Date: 10 Aug 89 22:10:50 GMT References: <8577@batcomputer.tn.cornell.edu> <14251@haddock.ima.isc.com> <516@brazos.Rice.edu> <8606@batcomputer.tn.cornell.edu> Sender: root@rice.edu Reply-To: preston@titan.rice.edu (Preston Briggs) Organization: Rice University, Houston Lines: 38 In article <8606@batcomputer.tn.cornell.edu> lacey@tcgould.tn.cornell.edu (John Lacey) writes: >In article <516@brazos.Rice.edu> (3383 of comp.lang.misc) > preston@titan.rice.edu (Preston Briggs) writes: >} On the other hand, versions of LISP allow things like >} (+ a b c d) >} and >} (< a b c d) >} >} which seems best of all. Maybe we should just give up on >} "normal" algebraic notation as a bad idea extended too far. > >One is postfix and the other is infix, but they have identical meanings. >So why is one unnatural and the other best of all? Also, perhaps there >are places where algebraic notation [which, by the way, (< a b c d) is >an example of] is not the best option, but I don't think that programming >languages are such a place. Indeed, algebra is only recently becoming >the powerful tool in programming that it is in mathematics (abstract data >types, algebraic specification, and so on). Yes, you're certainly correct about my mistakes. On the other hand, the point I was attempting to make still seems valid. That is, explicitely parenthesized prefix notation seems a better representation for complex expressions. I will agree that simple expressions are more simply written in C or Pascal---infix notation and commonly understood rules of precedence help achieve a clear, compact representation. But C has 16 levels of precedence! I think this is an indication of too much complexity crammed into the notion of. I think Lisp/Scheme/... have the right idea, at least regarding expressions---a simple, consistant notation that can be easily extended. Preston Briggs preston@titan.rice.edu