vestal (04/02/83)
I've just read some responses to an earlier article which evaluated a few common programming languages. I would like to (flame-)throw in a few comments in defense of those of us who are not omniscient: 1) My interpretation of the article was that a casual, subjective evaluation was being made of the languages; no religious percusion of the languages or their adherents was intended. I personally found it somewhat more entertaining than recursion vs. iteration, or parenthesis after return/sizeof, etc. 2) I don't think I need to be well-versed in the lambda calculus to complain about matching parenthesis in LISP, or denotational semantics to haggle about the best Pascal linear search loop. I'll freely admit I've never written over 500 lines of LISP code, and I personally don't think that IN PRACTICE the language consists of only one data type and two flow control constructs (or no data types or a whole lattice full of data types or whatever you want.) This isn't a diatribe against LISP, I just don't happen to think the formal underpinnings of a language completely encompass everything relating to programming. 3) From a software engineering/ language design point of view I think information like this can be useful. "Language designers propose but programmers dispose", to make a poor paraphrase. If we come up with a language that requires programmers to know it's denotational semantics, God help us. Now in my experience, there's no subject for discussion which I've seen raise tempers and ferment dogma like programming language design. While I'm just as bad as most people at dismissing what I know to be obviously crackpot ideas, I don't mind spending a few minutes listening to/reading them (after all, it contributes to my sense of superiority). I personally would like to keep the tone of mortal combat friendly.