PART ONE
Grokking Lisp
"'Grok' means to understand so thoroughly that the observer becomes a part of the process being observed—to merge, to blend, to intermarry, to lose personal identity in group experience. It means almost everything that we mean by religion, philosophy, and science—and it means as little to us as color means to a blind man."
Lisp isn't a language you just learn. It changes you, as a programmer and a person.
In Part One, we focus on the core of the Common Lisp language, features that you will use every day, and techniques that will change the way you see programming.
We'll start with a high-level overview of the whole language, working through the details of syntax, semantics, style, and configuration of your development environment.
From there we'll move on to strings, characters, writing, and printing; prompting for user input; lists, trees, and special lists like alists and plists; math, vectors and arrays; lexical scope and variables; and functions.
Then we'll build our first application, a straight-forward text-adventure, using everything you've learned up to that point; extend this knowlege to a simple web application and command-line utilities, explore more advanced features of the language, and writing domain-specific languages for even more control over syntax.
Chapters
- Common Lisp Bootcamp
- Printing, Strings and Streams
- Getting Input From Users
- Lists and List-Operations
- Look-up Lists and Trees
- Numbers and Math
- Arrays and Vectors
- Variables, Parameters, and Constants
- Closures
- Functions and Macros
- A Simple Text Adventure
- Namespaces, Symbols, Packages, and Systems
- A Simple Web Application
- Conditionals
- Command-Line Utilities
- Mapping and Looping
- Revisiting Loops with Iterate
- Format Strings
- Domain Specific Languages
- Part One in Review