Hacker News new | comments | ask | show | jobs | submit login

Sounds fun. The problem with elisp, though, is that it's (I am told) not a real Lisp. The info tutorial shipped with Emacs doesn't make me suspect otherwise. Perhaps a few neat elnode examples might help.

Rolling things up into a single response here:

    1.  Emacs Lisp is a real Lisp.  Full stop.
    2.  That said, Emacs Lisp is based on MacLisp (no
        relationship to Macintosh), which has dynamic scoping,
        not lexical scoping, and which is not a member of the
        Common Lisp family.
    3.  And *that* said, Emacs Lisp has long had a "cl" 
        package that adds many Common Lisp niceties, and, 
        since 24, has had optional lexical scoping, bringing a 
        more Common-Lisp-like experience to all aspects of
    4.  And all of *that* said, this particular package I 
        regard as a convenience, not a way to write a website.  
        There are many tools a devoted Emacser uses (org mode 
        and Planner mode, to name the two big ones) that want 
        to vend web pages, and this would be a great tool for 
        them, but I'd hardly recommend using elisp for a 
        "real" website.
It's completely worth learning elisp, and I think discounting this because it's "not written in a real Lisp" is bizarre, but you'd be right to look more towards Clojure or SBCL/Clozure (depending) to write a "real" Lisp website. That's just not what this is aimed at--and where it is aimed, I think it can be enormously successful.

There weren't enough in the article?

It is a real lisp. I think the problem you're experiencing is that EmacsLisp has a long history. So some things that have been said were said a loooong time ago and are no longer relevant.

Take a look at the other articles I have on my blog... it's clear EmacsLisp is a modern, usable, language.

First, thanks for all the effort you've put into this. Sometimes skeptical questioning comes across as negativity, I hope this wasn't the case.

A previous Elnode announcement was what made me actually want to look into Elisp more seriously, but I went straight into the Emacs Elisp manual, and found it rather low-level when it came to list construction. So I asked around:

(incidentally, with "not a real lisp" I meant the admittedly narrow "isn't the same thing at all" in relation to Common Lisp or Scheme)

and gave up because I wasn't interested in Emacs-specific programs.

But I won't argue for or against that. Will give it another go starting from your site.

Sorry if I sounded frustrated.

Don't listen to the haters. EmacsLisp is a real Lisp. You can use it to do solve real problems. It gets better all the time as people add stuff that has worked for years to the package archives (see elsewhere in this elnode thread where someone adds a redis client).

What I would say is you need to reach out more, come to #emacs and ask lisp questions. Play with Emacs (it's SO easy) and check out all the videos that people have been doing recently (http://emacsrocks.com/ and the one from me today http://www.youtube.com/watch?v=TR7DPvEi7Jg).

Elnode is a good way to get into Lisp because it's easy and it's in Emacs which is just a great Lisp environment.

Sorry, what exactly makes it "not a real lisp"? Maybe that statement is out of date, considering the addition of lexical scoping in Emacs 2.4.

Regardless, it seems like the author is able to build some real things. I know, for example, that you can run a simple file-directory server using elnode.

And, as I say, a Wiki.

What is the definition of a real lisp? AFAIK lisp is just a family of computer languages. Elisp certainly isn't the most powerful or full featured but it still seems to have most of the characteristics.

> What is the definition of a real lisp?

Something that makes people fight over whether Scheme is a real lisp. Something that makes people fight over whether Dylan is a real lisp.

In short, there really isn't one. Unless you say that all real lisps adhere to the Common Lisp standard, which isn't, actually, a common position to find anyone taking in real life.

I would say that it isn't worth letting the differences between emacs lisp and common lisp stand in the way of learning lisp (or Emacs).

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact