merits of Lisp vs Python

Kirk Sluder kirk at nospam.jobsluder.net
Sat Dec 9 16:55:19 EST 2006


In article <874ps423sx.fsf at thalassa.informatimago.com>,
 Pascal Bourguignon <pjb at informatimago.com> wrote:

> Kirk  Sluder <kirk at nospam.jobsluder.net> writes:
> > I've not seen a convincing explanation as to why imported macros 
> > from some library are so much more evil than imported functions. In 
> > both cases one might have to dig into documentation and/or comments 
> > to understand exactly what that imported snippit is doing.
> 
> And the difference with a library function is?
> 
> (defpackage "LIBRARY" (:export "THIS-IS-A-FUNCTION"))
> 
> (library:this-is-a-function ???) ; ???

Well, my argument is that there is little difference. Functions, 
objects and macros all redefine some aspect of the system's 
language, and all of them can be vulnerable to obfuscation or 
unnecessary abstraction.  The question I have is why do critics 
single out macros and not other forms of abstraction such as 
objects, packages, libraries, and functions?

just as an example:
from foolib import *
bar.bar("somefile")

What does this program do? I have no idea. Its functionality is 
hidden behind multiple layers of abstraction (function, object, 
library.)



More information about the Python-list mailing list