Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re:(4:)Specific Examples? - Re: A Macro System for Perl?

by shotgunefx (Parson)
on May 03, 2002 at 21:06 UTC ( #163906=note: print w/replies, xml ) Need Help??

in reply to Re: Re: Re: Specific Examples? - Re: A Macro System for Perl?
in thread A Macro System for Perl?

To be honest, my experience with Lisp is limited. The view I had of Lisp being slow was due to
  1. Working with a platform that was implemented in Lisp by pg that was slow and memory intensive compared to other languages.
  2. A discussion between Paul Graham and Trevor Blackwell where they benchmarked some simple and common operations using C, Perl and Lisp.

(I'm trying to dig it up now.) If I remember correctly, ANSI Clisp had to perform around 400+ operations to print a single character. Don't quote me on that though. I'll try and find the doc.


"To be civilized is to deny one's nature."
  • Comment on Re:(4:)Specific Examples? - Re: A Macro System for Perl?

Replies are listed 'Best First'.
Re:(5:)Specific Examples? - Re: A Macro System for Perl?
by Elian (Parson) on May 03, 2002 at 21:11 UTC
    Printing's a rather significant piece of work, though--take a look at the hoops perl potentially has to jump through to do something like "print $foo". ('Specially if $foo is overloaded or tied)

    Anyway, while Lisp is rather difficult to optimize in some ways, it's not at all tough to compile. I think you'll find that, for those tasks which fit a Lisp mindset well, Lisp will wipe the floor with perl. If Lisp is running interpreted, then Perl's likely to win for some stuff, but never underestimate the power of compilation...

      I don't disagree on the power of compiliation. I come from a low level programming background originally. (Video drivers, graphics engines.) I was under the false impression that most Lisps are interpreted.

      As an aside, this is IMHO one of the better threads to come across the Monastery in a bit.


      "To be civilized is to deny one's nature."
        The one thing to keep in mind is that Lisp and its descendant Scheme are the darlings of the Scary Smart people and, as such, gets a fair amount of research work thrown at them. And undergrad/grad student slave labor. (Never under (or over) estimate the power of student slave labor! :)
Re: Re:(4:)Specific Examples? - Re: A Macro System for Perl?
by hding (Chaplain) on May 04, 2002 at 16:33 UTC

    If you are specifically referring to the CLISP implementation of Lisp (which isn't unlikely, as it's the one that Graham used for his famous Yahoo stores project), then it's important to note that (with a few exceptions like bignum arithmetic) it's a pretty slow Lisp. It'd be more interesting to see how something like ACL or Lispworks did.

      Yes it's CLISP and the "slow" project I was referring to was indeed the Y! Store project. Which is being ported to Perl or C. Thanks for the enlightenment.


      "To be civilized is to deny one's nature."
        You're kidding--Yahoo! Store's getting ported to perl or C? Man, I hope it's perl... It'd be real fun to chat with Paul after that happens. :)

        Indeed, I thought that was probably what you were talking about. It's somewhat a mystery (at least to Lisp programmers) why they wouldn't just port it to a faster Lisp (any major commercial Lisp, for example - doing such ports should be relatively trivial), but that may have to do with the perception of Lisp programmers being hard to find. You'd think a company would rather undergo that than the massive technical problems involved in reinventing a lot of Lisp (especially stuff like Graham's which (I would assume based on his books) uses a lot of very Lispy constructs), in another language, but it's their choice, I suppose

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://163906]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (4)
As of 2018-01-20 01:29 GMT
Find Nodes?
    Voting Booth?
    How did you see in the new year?

    Results (226 votes). Check out past polls.