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