Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

rolls eyes

Not German, Clojure. Clojure is pretty easy.



Really? You must be really good at Clojure. Then you can explain this:

    user=> (list 1 2 3)
    (1 2 3)
    user=> (list? (list 1 2 3))
    true
so (1 2 3) is a list.

    user=> (cons 0 (list 1 2 3))
    (0 1 2 3)
    user=> (list? (cons 0 (list 1 2 3)))
    false
(0 1 2 3) is not a list?

    user=> (list? '(0 1 2 3))        
    true
But then it is???

WTF?

Compare ELISP:

    ELISP> (listp (list 1 2 3))
    t
    ELISP> (listp (cons 0 (list 1 2 3)))
    t
and CL:

    CL-USER> (listp (list 1 2 3))
    T                                                                                                                                       
    CL-USER> (listp (cons 0 (list 1 2 3)))
    T


That's pretty screwed up, but having brain-damged function naming doesn't mean it's not lisp. And a few odd corners does not illegability make.


Try TXR Lisp; you will be charmed.

http://www.nongnu.org/txr


Thanks kaz, but I've already got the manpage bookmarked. I haven't looked at it in-depth yet, but it seems to be awk, but better, which is pretty awesome.


You can also completely ignore the "awk-but-different" TXR pattern-based extraction language, and just use it as a Lisp, too. The REPL is nothing but Lisp, and code stored in ".tl" files is treated as Lisp. TXR Lisp is designed to be a nice Lisp dialect on its own, not to just fill in the gaps in another language.


Well, yeah, but why have one awesome thing when you can have two? I have to finish reading the docs, so I know how it works, though.




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

Search: