Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Lucerne: A Common Lisp web framework (eudoxia.me)
33 points by eudox on July 6, 2015 | hide | past | favorite | 13 comments


I quite enjoyed learning Scheme at university. Coming from OOP, I loved when it just clicked and you began to look for opportunities to use higher order functions. I never actually used Lisp, so I might try that one with a small project.

For what type of web project could Common Lisp be a good fit? It should probably have something to do with huge lists of data that have to be processed, so that you can map, filter and fold them. The data should be relatively simple to obtain, too, so that the missing libraries are not that huge of a problem.


Good Common Lisp doesn't use lists. A Lisp app does nothing like processing lists; in fact, Common Lisp only uses list-processing for processing source-code (aka macros). It is much more like a faster, more functional Ruby or Python in that it uses classes, looping, but encouraging good functional abstractions. Real-world Common Lisp looks nothing like scheme.


So what would be a good example use case in your mind?


CL is a powerful general purpose language in which you can accomplish much the same things as other programming languages. Where it will really shine is when you benefit from extending the language or environment to suit a domain and then you solve problems of that domain.

Try this as an explanation (and keep reading the book): http://www.gigamonkeys.com/book/introduction-why-lisp.html


I must confess I'm conflicted about this. While it's encouraging that Lisp is being used to build a web framework, this is not a Lispy approach. It's more like Python written in Lisp. In particular the use of Python decorators in Lisp grates.

A more Lisp-native approach could be to use higher order functions in Lisp as well as to use macros instead of adapting Django templates.


Seems to be a slight issue with your site on mobiles, somehow your button is overflowing onto a new line: https://imgrush.com/Qryn4-uvcegH.png

(resolution is 1080x1920, using Firefox on my Android 4.4.4 OnePlus One)


Name is uncomfortably close to "Lucene"


Agreed. It would also be nice to see a simple snippet of source on the front page similar to Flask[0] or Iron[1]. Perhaps something above or to the right of the "

0: http://flask.pocoo.org/

1: http://ironframework.io/


I had immediate association of Lucerne with Mary Shelley's Frankenstein, and for some odd reason CERN's LHC, the particle collider, in Geneva, Switzerland. Funny how associations bubble up. Why uncomfortable? Not a nitpick, just trying to grok what you wrote. I am very happy to see a CL framework along the lines of flask. I prefer CL to python, although, I use python too, and appreciate its ubiquity - in Blender3D, FreeCad, Vectorworks, etc... I am in the middle of the 1990 book, The Architecture of Symbolic Computers, by Peter M. Kogge. Amazing book. All about non-Von Neumann architectures, Lisp and functional programming.


Well, there's kinda an example in the docs [0]. Kinda related: this appears to be built on the Clack webserver and its homepage lists code snippets of Lucerne alternatives that are built on top of Clack as well [1].

[0] http://eudoxia.me/lucerne/docs/example--a-twitter-clone.html

[1] http://clacklisp.org/


I read through the Twitter-clone example in the docs after I posted my comment. The Twitter-clone is a little bit longer than a quick snippet. I just wanted something that showed a route pointing to an index function returning a hello world and a line of code starting the server.

Also, it is definitely Flask inspired. I might have to do a more in depth comparison of the two.


Lucerne is also name of the brand that Safeway/Von's/Pavillion's uses for their dairy products.


Lucerne is a city in Switzerland. It exists for about 1200 years longer than Lucene.

https://en.wikipedia.org/wiki/Lucerne




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

Search: