Full Stack Lisp
Full Stack Lisp
Build and deploy modern Lisp applications
About the Book
After a couple of years of playing around with Scheme and later Clojure around 2008-2010 I made the fateful decision to learn Common Lisp. Originally the plan was to learn just enough Lisp to be able to read On Lisp with proficiency and increase my mad Clojure skills, which was my favorite language at the time. My first reaction to this mutable and downright archaic dialect was a mix between fascination and revulsion. Uppercase symbols, uuuugghhhh! Somehow this mess of a language grew on me and I've been in love ever since. I've half joked about it infecting my brain, and if you think of a programming language as a memetic complex, it obviously is capable of infecting human hosts, so I'm not sure the joke isn't an actual fact. Send Help!
When I look back on the last five years I've been involved in this horrible mess, the amount of change is astonishing. Lisp might be the mother of all late bloomers, well into its fifties it grew into a viable platform for actual applications written by mortal programmers. The Common Lisp ecosystem is growing into a very usable state, it's a great time to explore how to actually use this language in a practical manner from top to bottom and deliver modern applications.
This is a book about application development. That means we'll explore run-times, servers, storage, frameworks and deployment, as well as various ways to use Lisp as part of a client application. In addition tools, libraries and practices the author finds useful will find their way into the book.
This book assumes only basic Lisp knowledge, complete newbies should read an introductory tutorial before reading this book.
The following is a quick outline of some of the topics this book will cover:
- Setting up a development environment
- Web servers, Clack HTTP library and the various frameworks built on top of it.
- Client side lisp
- Lispy HTML/CSS/JavaScrip
- Using 3rd party APIs
- Desktop apps
- DBs and ORMs
- Very basic security and crypto
- Deployment and management
Warning to early readers
- Current Status
- What remains to be written
- Additional ideas
- Thank you!
- Typographic conventions
- Warning to early readers
Part One: Development environment
Chapter 1: Roswell
- A quick word about Lisp implementations
- Installing Roswell
- Installing Lisp implementations
- A quick primer on Scripting with Roswell
Chapter 2: Lisp libraries
- ASDF: Another System Definition Facility
- Local projects
- Project generators
- Commonly used libraries
Chapter 3: Editing Lisp
- Chapter 1: Roswell
Part Two: Introduction to web development with Lisp
Chapter 4: Caveman2
- The web stack
- Setting up a simple project
- A few words about Clack/Lack
- Running the app
Chapter 5: Datafly and SXQL
- Database access
- The Wiki Model
- User model
- Page model
- Playing with the model in the repl
- Chapter 4: Caveman2
The Leanpub 60-day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms
80% Royalties. Earn $16 on a $20 book.
We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $12 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.