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

I develop everything (typesetting software, compilers, web server, email client, a desktop environment just for me, a sound synthesizer, my invoice generator, IRC bots, full blown web apps, a wiki engine and tons of general purpose libraries) using Common Lisp. My love for the language comes especially from the fact that its so limitless by design. I have DISASSEMBLE and I have DEFUN. I have ETYPECASE and I have LOOP. Lacking a language feature? Add it with ease and incredible performance.



Are any of these software tools available as open source so I can see the advantage of using Lisp?


Not the parent, but I recently wanted ssyntax[0] in Common Lisp, so I decided to write an implementation for it[1]. In doing so, I created a DSL for defining ssyntax (made up of defssyntax-test, defssyntax-macro, and defssyntax-sym-mac). Just note that my implementation uses a library of utilities I wrote[2] and is not pure Common Lisp.

[0] http://arclanguage.github.io/ref/evaluation.html

[1] https://github.com/malisper/Clamp/blob/master/experimental/s...

[2] https://github.com/malisper/Clamp



Please tell us about your stack. Which implementation of Common Lisp do you use?


Slackware, Clozure Common Lisp, Emacs, Slime.

Actually its not very fancy. I basically live in a live CL image, have some emacs key bindings which invoke a simple CL job system (EVAL in a thread). I can shift-right-click things to get a menu of actions for that type of file and plain-right-click to run the VIEW action for that type of file (as a job in CL).

http://i.imgur.com/2b47mII.png

I have a QUERY function which is hooked up to Recoll (full text search). I have the HTML ANSI CL draft under /usr/doc/ansi-common-lisp/ and HTML versions of all manpages under /usr/doc/man so finding documentation is quite nice. E.g. I (query "defun") or (query "gethostname") and get a sane list of results.

I have a markdown like language in which I write all my documentation, its media independent and has backends for plaintext, html and LaTeX output. I want to release it soon but well...

There is the SH DSL for executing UNIX commands, the PIPE macro for doing things like (pipe (sh hostname) (read)) (just a silly example).

My web server is open source (telnet to mr.gy on port 80). Its mostly "cute", not something you'd run on a large site.


I'd love a write up of your setup, and I think other people here would as well. Did you build this all from what you thought you'd rather use, or have you tried Lisp machines like Genera?


Never used Genera or the likes (am a youngster). I have seen screencasts though. I have been mostly influenced by Acme of Plan 9 and the Oberon UI (also only through secondary sources). I am also stuck on UNIX so I had to deal with that in some way, also I know my way around UNIX so I felt it was easier to integrate UNIX with CL instead of learning a new OS.

My time with UNIX also made me fond of text files so a lot of my "stack" is optimized for plain text interfaces (e.g. the email client started because I didn't like the directory structure of maildir). Also I wanted my mail in a git repository.

> Did you build this all from what you thought you'd rather use

Kind of, its a compromise between what I wanted (a CL OS, optimized for simple text interfaces and CL hacking) and what was in reach. At some point I decided to go the path of least resistance, move my CL stack closer to the UNIX/Slackware stack and reuse and integrate as much open source software as possible.

The result is a very thin layer of CL and Elisp code and some CL apps which combine to a UI I feel comfortable with.


I am an amateurish Linux user and my setup is very similar to you, and I am just starting to lisp (Arch Linux, lots of stuff in Emacs, and SBCL/CCL/ECL; I am trying them all).

It is very encouraging to see you work and I really need to get up to speed on the Lisp.

Also, I am a Recoll fan too. Great stuff!


Cool stuff.

Have you considered inferior shell for unix commands?

Does your markdown resemble scribe from racket? I have been considering doing that.




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

Search: