A collection of examples of how to use Common Lisp| lispcookbook.github.io
A collection of examples of how to use Common Lisp| lispcookbook.github.io
Caution [from 2017: what a road since then]: this is a draft. I take notes and write more in other resources (the Cookbook, my blog).update, January 2024: see my new video on Youtube, a demo on how to assemble Hunchentoot, easy-routes, Djula templates (with ready-to-use Bulma themes), with error handling and common traps: https://www.youtube.com/watch?v=h_noB1sI_e8update, June 2022: see my web project skeleton, it illustrates and fixes common issues: https://github.| Lisp journey
Djula is a Common Lisp port of the Django templating language. It’s good, it’s proven (it’s one of the most downloaded Quicklisp packages), it is easy to use and it has good documentation.It basically looks like this:{% extends "base.html" %} {% block title %}Memberlist{% endblock %} {% block content %} <ul> {% for user in users %} <li><a href="{{ user.url }}">{{ user.username }}</a></li> {% endfor %} </ul> {% endblock %} What was missing in the documentation was how to create custom fi...| Lisp journey
Lisp has a long and rich history and so does the development of Graphical User Interfaces in Lisp. In fact, the first GUI builder was written in Lisp (and sold to Apple. It is now Interface Builder).Lisp is also famous and unrivaled for its interactive development capabilities, a feature even more worth having to develop GUI applications. Can you imagine compiling one function and seeing your GUI update instantly?| Lisp journey
Q1 2018 Q2 2018 Q3 2018 I wanted to do this for a year and here we are ! I don’t think I’ll carry on, with this format at least.If I missed anything crucial: you have comments and PRs: https://gitlab.com/lisp-journey/lisp-journey.gitlab.io/Happy (re)discoveries !Documentation Debugging – the Common Lisp Cookbook Loop, iteration, mapping – the Common Lisp Cookbook cl-exercise: Common Lisp Learning System running on browsers Announcements various SBCL releases (from 1.| Lisp journey
You entered this new world of Lisp and now wonder: how can we debug what’s going on ? How is it more interactive than in other platforms ? What does bring the interactive debugger appart from stacktraces ?note: this tutorial is available on the Common Lisp Cookbook and it will receive updates there.If you want step-by-step examples of interactive debugging with nice screenshots and gifs, see the blog posts in the References section below.| Lisp journey
Following is a tutorial on how to use the Mito ORM.As usual, this is best read on the Common Lisp Cookbook. It will be updated there.The Database section on the Awesome-cl list is a resource listing popular libraries to work with different kind of databases. We can group them roughly in four categories: wrappers to one database engine (cl-sqlite, postmodern, cl-redis,…), interfaces to several DB engines (clsql, sxql,…), persistent object databases (bknr.| Lisp journey
Common Lisp may have more libraries than you think. See: Quickdocs - the library documentation hosting for CL. the Awesome-cl list, a curated list of libraries. lisp-lang.org’s recommended libraries (from State of the CL ecosystem, 2015) Quicklisp is the de-facto package manager, but not the only tool.Some terminology first In the Common Lisp world, a package is a way of grouping symbols together and of providing encapsulation.| Lisp journey
The set of tools to do web scraping in Common Lisp is pretty complete and pleasant. In this short tutorial we’ll see how to make http requests, parse html, extract content and do asynchronous requests.Our simple task will be to extract the list of links on the CL Cookbook’s index page and check if they are reachable.Best read in the Cookbook !We’ll use the following libraries:| Lisp journey