Live data from Hacker News

Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

fullstacklisp.com

31–40 of 110 posts

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#32

I'd love to see more books like this for less common languages (Haskell particularly), as I've found there's generally plenty of resources for learning the basic commands and code structure but there's little information for going from those first steps to creating an actual useful application.

I believe this is one of the major goals of http://book.realworldhaskell.org/read/ With this book, we want to show you how to use functional programming and Haskell to solve realistic problems. This is a hands-on book: every chapter contains dozens of code samples, and many contain complete applications.

Real World Haskell is somewhat out of date. I'm not sure what to go with instead, but I've heard good things about Haskell Programming from First Principles (which has already been mentioned in this thread).

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#33
post #6
post #5

Why is this on the front page of Hacker News? Isn't this an advertisement?

It's free online and has a github repo under MIT license as well... so yeah it's an advertisement but for something that you can get for free.

I thought it was just one free chapter. Maybe I was mistaken?

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#35
post #25
post #2

Best of luck! I like how you mention first thinking Common Lisp was archaic, and then realising how advanced it really is. BTW, you might want to wrap your text lines:-)

+1. Kenny Tilton's blog is also great for that kind of thing. "You know Lisp is the perfect language precisely because it lost its momentum (died) and lives on. Other languages need their Next Big Thing momentum." http://smuglispweeny.blogspot.com/2013/08/wow-even-lispers-h...

I think the journey of a Lisper inevitably ends up with realizing that Common Lisp is not an acceptable Lisp. Then you start searching for an acceptable Lisp. You look at Tcl, at Prolog, Io, Rebol, and Icon; you learn Shen, try Scheme and Racket, appreciate Smalltalk and Self and Slate, wrap your head around Forth and Joy and Factor… and the whole time you write Common Lisp. Because there is no acceptable Lisp.

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#36
post #35
post #25

Earlier quoted context omitted.

+1. Kenny Tilton's blog is also great for that kind of thing. "You know Lisp is the perfect language precisely because it lost its momentum (died) and lives on. Other languages need their Next Big Thing momentum." http://smuglispweeny.blogspot.com/2013/08/wow-even-lispers-h...

I think the journey of a Lisper inevitably ends up with realizing that Common Lisp is not an acceptable Lisp. Then you start searching for an acceptable Lisp. You look at Tcl, at Prolog, Io, Rebol, and Icon; you learn Shen, try Scheme and Racket, appreciate Smalltalk and Self and Slate, wrap your head around Forth and Joy and Factor… and the whole time you write Common Lisp. Because there is no acceptable Lisp.

Why is that though?

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#37
post #10

Can you include a good description of reading macros? I'm still looking for good explanation with examples of their power.

I found them useful when I looked at clojure and saw their shorthand syntax for lambdas where #(* % %) is a lambda that takes one argument and squares it. You can get some tidy things that are similar with regular macros but to make it actually equivalent your need to hook into the reader..and that's what reader macros are for. So within the hour I had something that let me write λ(* _ _)

The best bit though, is that this isn't some nasty hack. This is supported by the spec, so I can package this up and let other people us it just like any other functionality we care to ship around.

That's my favorite thing really, being able to treat approaches to writing code in the same way we treat the functionality we make using code.

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#38
post #35

Earlier quoted context omitted.

I think the journey of a Lisper inevitably ends up with realizing that Common Lisp is not an acceptable Lisp. Then you start searching for an acceptable Lisp. You look at Tcl, at Prolog, Io, Rebol, and Icon; you learn Shen, try Scheme and Racket, appreciate Smalltalk and Self and Slate, wrap your head around Forth and Joy and Factor… and the whole time you write Common Lisp. Because there is no acceptable Lisp.

Why is that though?

Because lisp is an immensely flexible language/concept. Everyone has their own idea of what it should be/can be.

Common Lisp was exactly what it says "Common". Just some sort of common ground between all the various lisp dialects that existed, because everyone went their own way in extending the language. People end up coming back to it time and time again, because all the others don't quite provide that common ground for people to work on. Whilst there may be things missing, there's always something more missing in other lisps.

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#39

Is it full stack Lisp in the sense that Lisp is running on both the server and in the client (browser/mobile)? If it is the latter, that would be quite compelling. Clojure/Clojurescript is quite compelling from a developer point of view, since you don't have to switch mental context to develop your server and client code (as you would have to do if you develop Go on the server and JS in the browser).

In Potato we did exactly this. The server side is written in Common Lisp and the client side is implemented in Clojurescript.

While I have to say that it has worked pretty well, Lisp and Clojurescript are different enough that it really isn't much of a benefit to use both together. Even the S-expression format of the two languages are so different that we need to use JSON when sending messages from the server to the client (and vice versa, of course).

Please feel free to look at the code if you want to learn more about how it's done. I'll be happy to answer any questions: https://github.com/cicakhq/potato

Re: Show HN: Full Stack Lisp – A book in progress about writing Common Lisp apps

#40
post #34
post #31

Earlier quoted context omitted.

or click on the book cover. hard to miss

I missed it ...

It is interesting to see people call an image a "cover" and a website a book even when the said cover actually never covers anything nor there is a book in there because a website.

Digital books are so broken!

Post reply on HN