Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!hplabs!otter.hpl.hp.com!otter!sfk From: sfk@otter.hpl.hp.com (Steve Knight) Newsgroups: comp.lang.lisp Subject: Re: Ahem. [Re: Virtues of Lisp syntax] Message-ID: <1350032@otter.hpl.hp.com> Date: 24 Sep 90 18:28:18 GMT References: <15089@yunexus.YorkU.CA> Organization: Hewlett-Packard Laboratories, Bristol, UK. Lines: 33 Eric Olsen points out: > However there are significant limitations on what can be done in C++. > For example, suppose you need to convolve an image as quickly as > possible, and that the convolution kernel is not known at compile > time. In Lisp, one can easily write code to make a function that applies > a specific convolution kernal to an image. [...] > My impression is that writing a similiar piece of code in Algol > languages would be needlessly complicated (although doable). This point is one that illustrates the usefulness of creating code on the fly. Where I differ in view is in thinking that this capability does not entail the direct relationship between internal and external syntax that Lisp's syntax possesses. Jeff Dalton has argued, and I concede, that if you don't have such a direct relationship then a certain simplicity is lost. I justify this, in my mind, by believing that the benefit of having a block structured syntax outweighs the minor complications introduced. Of course, you'd have to agree the complications were minor, the simplicity was not significant, and that a different syntax might be better -- and it looks to me as if Jeff has a different assessment on all of these. > Anyway, I've yet to find an application that can be easily implemented > in an Algol language that cannot be readily implemented in Lisp. > However, the above examples are easily implemented in Lisp, but, I > think, are not readily implemented in Algol languages. I'd be happy to prove that this was not possible, on the simple basis of matching construct & concepts between the two schools. I've never heard anyone state the contrary. Of course, this is NOT the same as stating that Lisp is an unsuitable delivery vehicle, alas, which is all too often the case. Steve