Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!shadooby!samsung!usc!apple!rutgers!aramis.rutgers.edu!atanasoff.rutgers.edu!lou From: lou@atanasoff.rutgers.edu (Lou Steinberg) Newsgroups: comp.lang.lisp Subject: Re: Linking and MACL (really efficiency of local functions) Message-ID: Date: 22 Nov 89 17:11:59 GMT References: <21316@brunix.UUCP> <1989Nov20.150510.20700@hellgate.utah.edu> Organization: Rutgers Univ., New Brunswick, N.J. Lines: 21 Cc: lou In article simon@bear.UUCP (Simon Leinen) writes: > With many compilers, using local functions is always *slower* than > separate functions. Perhaps this is what prevents so many people from > using LABELS and FLET. There is another issue with LABELS and FLET: interactive programming environments for LISP (at least the ones I am familiar with) do not have good ways to handle local functions. E.g. to trace a function, you must give the function name, and what gets traced is the global function definition. There is no way to even specify that you want tracing for a local definition. There are similar problems with anonymous functions, e.g. closures produced with FUNCTION. I would guess that this, more than efficiency issues, is what leads people not to use local function definitions in lisp. -- Lou Steinberg uucp: {pretty much any major site}!rutgers!aramis.rutgers.edu!lou arpa: lou@cs.rutgers.edu