Whan that April with his showres soote The droughte of March hath perced to the roote, And bathed every veine in swich licour, of which virtue engendred is the flowr..... Thanne longen folk to goon on pilgrimages, And palmeres for to seeken straunge strondes....
--Geoffrey Chaucer
Language evolves.
John McCarthy invented the USP programming language almost 30 years ago, describing its overall design in an April 1960 Communications of the ACM paper. Since that ancient April, LISP has evolved in response to new environments: supercomputers, time-sharing systems, personal workstations.
During those decades, LISP maintained a solid reputation for being powerful, elegant, and inefficient. Remarkably inefficient. LISP code gobbled memory voraciously. LISP programs ran slowly, bogged down in function calls. That was the perception.
The perception was mainly accurate. Early compilers for LISP were crude and produced "simple and often ridiculous code on backing out of an execution-order treewalk of the program," according to Richard Gabriel, who wrote a book on benchmarking HSP implementations (Performance and Evaluation of LISP Systems, MIT Press, 1985).
Today, though, HSP compilers use all the tricks of the optimizing compilers for algorithmic languages. They convert costly function calls to in-line code, delay evaluation and rearrange the order of evaluation for efficiency, unwind loops, and do peephole optimization and constant subexpression elimination and interfunction optimization. If you think of USP and FORTRAN,, two ancient languages, as the archetypal symbol-processing and number-crunching languages, respectively, you might be surprised to learn that one modern LISP implementation, S-1 LISP, produces code for numeric computations that rivals FORTRAN code.
A LISP program is still likely to mn slower and to use memory less efficiently than a comparable C program. But increased memory and processing power in current hardware and continuing improvements in LISP implementations make LISP more appealing for inclusion in developers' toolkits. This is good news because LISP's virtues--its extensibility, its expressive power, its facility in handling symbolic information--are impressive.
It's time somebody said it: spelling checkers are snake oil. In a recent editorial in another programming magazine, the editor (let's call him David) congratulated himself on the acquisition of a spelling checker, which he touchingly expected to cure the misspellings that have plagued his editorials. The selfsame editorial was, of course, plagued with the kinds of misspellings that spelling checkers don't check.
Spelling checkers do not, in fact, check spelling at all, and anyone who uses one for that purpose has been suckered by the snake-oil salesmen. If you want to know how a word is spelled, David, you look it up in a dictionary. The word lists supplied with spelling checkers are not dictionaries, whatever their purveyors may tell you, and can at best tell you that there exists a word with a certain spelling. Spelling checkers won't stop you from putting that damned apostrophe in possessive its. The commonest errors are the ones they are most likely to ignore.
Spelling checkers should really be called typo catchers because all they do is catch certain kinds of typing errors. Unfortunately, they don't even catch all of these. Consider the following mish-mash, which any spelling checker would accept unquestioningly: "Now is the tome fir all god men to sump this sneak oil sown the grain." What kind of error checking is it that regularly fails to detect the most common errors? Sneak oil indeed.
As you read this, it will have been nearly six months since Rob Dickerson made his pilgrimage from the Pacific Northwest to the straunge strondes of Scotts Valley, California. After some wintry blustering, Microsoft and Borland came to an agreement that put certain short term constraints on Dickerson's activities as vice president of product management for Borland and also included a pact that the two companies would not recruit employees from one another's ranks for six months. Next month, when the moratorium on raiding ends and Nature priketh them in thir corages, will other folk longen to goon?
Michael Swaine editor-in-chief