Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!sdd.hp.com!spool.mu.edu!snorkelwacker.mit.edu!hsdndev!cmcl2!kramden.acf.nyu.edu!brnstnd From: brnstnd@kramden.acf.nyu.edu (Dan Bernstein) Newsgroups: comp.lang.misc Subject: The powerlessness of Lisp Message-ID: <4637:Mar2102:11:2991@kramden.acf.nyu.edu> Date: 21 Mar 91 02:11:29 GMT References: <1991Mar20.192606.29608@linus.mitre.org> Organization: IR Lines: 39 In article <1991Mar20.192606.29608@linus.mitre.org> john@mingus.mitre.org (John D. Burger) writes: > brnstnd@kramden.acf.nyu.edu (Dan Bernstein) writes: > ... even if compile times were instant I'd spend forever just > waiting for most programs to run. > Based on my experience, this is nonsense. I develop AI applications > in Common Lisp that do complex things like understand natural language > utterances and reason about how best to design graphical > representations of information, and these programs run fairly quickly, > i.e. fast enough to act as an interface to another program. Wow. So you have a naturally complex but short-running program. I admit such programs exist. They are not the mainstream, at least not in systems programming and numerical programming. > A machine is much more than its ``primitive datatypes.'' But Lisp > doesn't even provide full access to pointers. > What does this mean? "Pointers" are an artifact of languages like C, Be serious. Pointers (a.k.a. addresses) have been in every machine language at least since 1960. C provides a concept of ``memory'' (more precisely, the set of all pointer values, which equals the set of all char pointer values modulo typechecking) and pointers into memory. You can do things with memory in C that you CANNOT even express in Lisp. To return to the original point, C is more powerful than Lisp in this area. > In fact, I've been focusing on the prototyping and development stage > of a program, because that's when it's most important to get good > compile times *and* run times. > As someone who has worked in a C shop in another life, building > business applications, I can say that there's no comparison between the > two with respect to development time or maintainability of code. And I can say that the continued refusal of dynamic-typing advocates to actually *make* such a comparison objectively is one mark of a true religion. ---Dan