Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/DalekBaldwin/on-lisp
A modernized and annotated code companion to Paul Graham's "On Lisp".
https://github.com/DalekBaldwin/on-lisp
lisp textbook
Last synced: 3 months ago
JSON representation
A modernized and annotated code companion to Paul Graham's "On Lisp".
- Host: GitHub
- URL: https://github.com/DalekBaldwin/on-lisp
- Owner: DalekBaldwin
- Created: 2013-10-03T15:27:41.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2022-11-20T00:19:35.000Z (about 2 years ago)
- Last Synced: 2024-08-01T03:41:58.461Z (6 months ago)
- Topics: lisp, textbook
- Language: Common Lisp
- Homepage:
- Size: 558 KB
- Stars: 318
- Watchers: 21
- Forks: 41
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.org/DalekBaldwin/on-lisp.svg?branch=master)](https://travis-ci.org/DalekBaldwin/on-lisp)
This repository contains a version of the code from On Lisp modified for use in modern Lisp environments. Paul Graham's original code can be found [here](http://ep.yimg.com/ty/cdn/paulgraham/onlisp.lisp).
Among other necessary changes, this version:
- Updates code that relied on pre-ANSI built-ins
- Includes the bug fixes mentioned on pg's [errata page](http://www.paulgraham.com/onlisperrata.html)
- Organizes everything into a modern system structure with ASDF and named-readtables
- Adapts most of the example code into test suites
- Makes it easy to load each version of the query system, Prolog system, and OOP system separatelyIt was written to follow along with the book page by page and catalogue dependencies between the chapters, which become quite complex toward the end.
The PDF file of the book available from Paul Graham's site isn't so great for reading on a screen. A version with smaller margins and the missing figures re-added can be found [here](http://www.lurklurk.org/onlisp/onlisp.html).
An online HTML version of the book, minus graphical figures, can be found [here](http://dunsmor.com/lisp/onlisp/onlisp.html).
This code has been tested on SBCL, CCL, CLISP, and ECL. The simplest way to get it up and running is to install [Quicklisp](https://www.quicklisp.org) and clone this repository into your `quicklisp/local-projects` directory.