Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A collection of examples from On Lisp by Paul Graham translated into Clojure.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 src
Octocat-spinner-32 test
Octocat-spinner-32 .gitignore
Octocat-spinner-32 README.md
Octocat-spinner-32 project.clj
README.md

OnLisp in Clojure Examples

Introduction

I have been translating the examples from Paul Graham's On Lisp into Clojure.

Contents

My Introduction - Why I am doing this
Chapter 2 (2.1 - 2.3) - Intro to functions
Chapter 2 (2.4) - Polymorphism
Chapter 2 (2.5 - 2.6) - Scope and closures
Chapter 2 (2.7 - 2.10) - Local scope and tail recursion
Chapter 3 - Functional design
Chapter 4 (4.1 - 4.3) - Utility function
Chapter 4 (4.5 - 4.8) - Mapping and I/O
Chapter 5 - More advanced functional programming
Chapter 6 - Representing Networks in data and closures
Chapter 7 (7.1 - 7.4) - Intro to macros
Chapter 7 (7.5 - 7.11) - Intro to macros pt. 2
Chapter 8 - When to use macros
Chapter 9 - Variable capture
Chapter 10 - More macro pitfalls
Chapter 11 (11.1) - Creating context
Chapter 11 (11.2) - The with- macro
Chapter 11 (11.3 - 11.6) - Classic macros

Links

The most important link is to On Lisp Paul Graham's fantastic book, which is available to read online.

Michael Fogus has translated the examples from chapters 2 - 5 on his blog.

Stuart Halloway translated examples from chapters 7, 9 and 10 on his blog.

Something went wrong with that request. Please try again.