Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!mips!news.cs.indiana.edu!arizona.edu!arizona!gudeman From: gudeman@cs.arizona.edu (David Gudeman) Newsgroups: comp.lang.misc Subject: Re: Expressiveness Message-ID: <1015@optima.cs.arizona.edu> Date: 22 Mar 91 08:16:12 GMT Sender: news@cs.arizona.edu Lines: 42 In article <1991Mar21.123639.577@hawk.cs.ukans.edu> Bill Kinnersley writes: ]Icon's backtracking is "implicit", which means it is there but you can't ]see it. I don't now what you mean. You mean that there is no special syntactic construct that says "this is backtracking"? ]It is "restricted syntactically", which means you have to rewrite ]a major portion of your program into a single expression to get it to work. I don't know what you mean again. Backtracking works through procedure calls, which seems pretty dynamic to me. As to rewriting programs: only if you wrote it wrong in the first place, and all you have to do to correct things is go through and put commas at the end of any line that you want backtracked into. This is seldom what is wanted though. Usually, the default behavior works fine. ]... Icon lacks boolean variables, operators or expressions. Icon has boolean operators and expressions in the same sense that C does -- they are actually more powerful, but you can treat them like boolean operators and expressions if you want. Icon doesn't have boolean variables, which has bothered me all of one time in thousands of lines of Icon code. And it was easy to get around. With "break", "next" (that's "continue" to you C hackers), and "return", boolean variables just aren't needed very often. Icon even has cascaded breaks so you can break out of multiple levels of loops. ]These two features, the heart and soul of Icon, are elegant on paper, and ]sound useful--until you try to use them. In practice they are of limited ]use, difficult to write, and difficult to debug. There hundreds of people who disagree. Dedicated Iconites have come from backgrounds as diverse as novice BASIC or Pascal programmers to guru-level C hackers. I suspect that your effort to learn the language --if any-- was half-hearted or under extremely poor conditions. -- David Gudeman gudeman@cs.arizona.edu noao!arizona!gudeman