1859 lines
51 KiB
HTML
1859 lines
51 KiB
HTML
|
|
<!DOCTYPE HTML>
|
|
<html lang="" >
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
|
<title>Who Is This Book For? · Learn Lisp The Hard Way</title>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
<meta name="description" content="">
|
|
<meta name="generator" content="GitBook 3.2.3">
|
|
<meta name="author" content=""the Phoeron" Colin J.E. Lupton">
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="gitbook/style.css">
|
|
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="gitbook/gitbook-plugin-hints/plugin-hints.css">
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="gitbook/gitbook-plugin-folding-chapters/folding-chapters.css">
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="gitbook/gitbook-plugin-highlight/website.css">
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="gitbook/gitbook-plugin-search/search.css">
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="gitbook/gitbook-plugin-fontsettings/website.css">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<meta name="HandheldFriendly" content="true"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
|
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
|
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
|
<link rel="apple-touch-icon-precomposed" sizes="152x152" href="gitbook/images/apple-touch-icon-precomposed-152.png">
|
|
<link rel="shortcut icon" href="gitbook/images/favicon.ico" type="image/x-icon">
|
|
|
|
|
|
<link rel="next" href="introduction.html" />
|
|
|
|
|
|
<link rel="prev" href="preface-part-two.html" />
|
|
|
|
|
|
</head>
|
|
<body>
|
|
|
|
<div class="book">
|
|
<div class="book-summary">
|
|
|
|
|
|
<div id="book-search-input" role="search">
|
|
<input type="text" placeholder="Type to search" />
|
|
</div>
|
|
|
|
|
|
<nav role="navigation">
|
|
|
|
|
|
|
|
<ul class="summary">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="header">LEARN LISP THE HARD WAY</li>
|
|
|
|
|
|
|
|
<li class="chapter " data-level="1.1" data-path="./">
|
|
|
|
<a href="index.html">
|
|
|
|
|
|
Second Draft (in-progress)
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="1.2" data-path="CHANGELOG.html">
|
|
|
|
<a href="CHANGELOG.html">
|
|
|
|
|
|
CHANGELOG
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="1.3" data-path="TODO.html">
|
|
|
|
<a href="TODO.html">
|
|
|
|
|
|
TODO
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li class="header">PREFACE</li>
|
|
|
|
|
|
|
|
<li class="chapter " data-level="2.1" data-path="preface.html">
|
|
|
|
<a href="preface.html">
|
|
|
|
|
|
TANSTAAFL
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="2.2" data-path="preface-part-two.html">
|
|
|
|
<a href="preface-part-two.html">
|
|
|
|
|
|
The Hard Way is Easier
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter active" data-level="2.3" data-path="preface-part-three.html">
|
|
|
|
<a href="preface-part-three.html">
|
|
|
|
|
|
Who Is This Book For?
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="2.4" data-path="introduction.html">
|
|
|
|
<a href="introduction.html">
|
|
|
|
|
|
Lisp: A Future History
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="2.5" data-path="acknowledgements.html">
|
|
|
|
<a href="acknowledgements.html">
|
|
|
|
|
|
Acknowledgements
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li class="header">PART ONE</li>
|
|
|
|
|
|
|
|
<li class="chapter " data-level="3.1" data-path="1-0-0-overview.html">
|
|
|
|
<a href="1-0-0-overview.html">
|
|
|
|
|
|
Grokking Lisp
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<ul class="articles">
|
|
|
|
|
|
<li class="chapter " data-level="3.1.1" data-path="1-01-00-lisp-bootcamp.html">
|
|
|
|
<a href="1-01-00-lisp-bootcamp.html">
|
|
|
|
|
|
Common Lisp Bootcamp
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<ul class="articles">
|
|
|
|
|
|
<li class="chapter " data-level="3.1.1.1" data-path="1-01-01-syntax-overview.html">
|
|
|
|
<a href="1-01-01-syntax-overview.html">
|
|
|
|
|
|
Syntax Overview in 5 Minutes
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.1.2" data-path="1-01-02-repl.html">
|
|
|
|
<a href="1-01-02-repl.html">
|
|
|
|
|
|
The REPL
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.1.3" data-path="1-01-03-expressions.html">
|
|
|
|
<a href="1-01-03-expressions.html">
|
|
|
|
|
|
Expressions, Parentheses, and Return Values
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.1.4" data-path="1-01-04-lists-cons-cells.html">
|
|
|
|
<a href="1-01-04-lists-cons-cells.html">
|
|
|
|
|
|
Lists, Cons-Cells, and Memory
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.1.5" data-path="1-01-05-symbols.html">
|
|
|
|
<a href="1-01-05-symbols.html">
|
|
|
|
|
|
Symbols and Namespaces
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.1.6" data-path="1-01-06-prefix-notation.html">
|
|
|
|
<a href="1-01-06-prefix-notation.html">
|
|
|
|
|
|
Prefix Notation
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.1.7" data-path="1-01-07-style-guide.html">
|
|
|
|
<a href="1-01-07-style-guide.html">
|
|
|
|
|
|
Common Lisp Style Guide
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.1.8" data-path="1-01-08-configuration.html">
|
|
|
|
<a href="1-01-08-configuration.html">
|
|
|
|
|
|
Configuring Your Development Environment
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2" data-path="1-02-00-input-output.html">
|
|
|
|
<a href="1-02-00-input-output.html">
|
|
|
|
|
|
Printing, Streams, and Strings
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<ul class="articles">
|
|
|
|
|
|
<li class="chapter " data-level="3.1.2.1" data-path="1-02-01-strings.html">
|
|
|
|
<a href="1-02-01-strings.html">
|
|
|
|
|
|
Strings
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.2" data-path="1-02-02-more-strings.html">
|
|
|
|
<a href="1-02-02-more-strings.html">
|
|
|
|
|
|
More Strings
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.3" data-path="1-02-03-unicode.html">
|
|
|
|
<a href="1-02-03-unicode.html">
|
|
|
|
|
|
Unicode and Strings
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.4" data-path="1-02-04-chars.html">
|
|
|
|
<a href="1-02-04-chars.html">
|
|
|
|
|
|
Characters
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.5" data-path="1-02-05-more-chars.html">
|
|
|
|
<a href="1-02-05-more-chars.html">
|
|
|
|
|
|
More Characters
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.6" data-path="1-02-06-char-codes.html">
|
|
|
|
<a href="1-02-06-char-codes.html">
|
|
|
|
|
|
Character Codes
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.7" data-path="1-02-07-strings-from-chars.html">
|
|
|
|
<a href="1-02-07-strings-from-chars.html">
|
|
|
|
|
|
Strings from Chars
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.8" data-path="1-02-08-printing.html">
|
|
|
|
<a href="1-02-08-printing.html">
|
|
|
|
|
|
Printing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.9" data-path="1-02-09-more-printing.html">
|
|
|
|
<a href="1-02-09-more-printing.html">
|
|
|
|
|
|
More Printing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.10" data-path="1-02-10-prin1.html">
|
|
|
|
<a href="1-02-10-prin1.html">
|
|
|
|
|
|
Printing With prin1
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.11" data-path="1-02-11-princ.html">
|
|
|
|
<a href="1-02-11-princ.html">
|
|
|
|
|
|
Printing With princ
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.12" data-path="1-02-12-format.html">
|
|
|
|
<a href="1-02-12-format.html">
|
|
|
|
|
|
A Brief Introduction to Format
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.13" data-path="1-02-13-more-format.html">
|
|
|
|
<a href="1-02-13-more-format.html">
|
|
|
|
|
|
A Little Bit More on Format
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.14" data-path="1-02-14-pathnames.html">
|
|
|
|
<a href="1-02-14-pathnames.html">
|
|
|
|
|
|
Pathnames
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.15" data-path="1-02-15-streams.html">
|
|
|
|
<a href="1-02-15-streams.html">
|
|
|
|
|
|
Streams
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.16" data-path="1-02-16-file-streams.html">
|
|
|
|
<a href="1-02-16-file-streams.html">
|
|
|
|
|
|
File Streams
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.17" data-path="1-02-17-binary-streams.html">
|
|
|
|
<a href="1-02-17-binary-streams.html">
|
|
|
|
|
|
Binary Streams
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.18" data-path="1-02-18-prompting-users.html">
|
|
|
|
<a href="1-02-18-prompting-users.html">
|
|
|
|
|
|
Prompting Users
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.2.19" data-path="1-02-19-pretty-printing.html">
|
|
|
|
<a href="1-02-19-pretty-printing.html">
|
|
|
|
|
|
Pretty-Printing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.3" data-path="1-03-0-getting-input-from-users.html">
|
|
|
|
<a href="1-03-0-getting-input-from-users.html">
|
|
|
|
|
|
Extra Credit: Getting Input from Users
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.4" data-path="1-04-0-lists.html">
|
|
|
|
<a href="1-04-0-lists.html">
|
|
|
|
|
|
Lists and List-Operations
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.5" data-path="1-05-0-lookups-trees.html">
|
|
|
|
<a href="1-05-0-lookups-trees.html">
|
|
|
|
|
|
Extra Credit: Look-up Lists and Trees
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6" data-path="1-06-0-math.html">
|
|
|
|
<a href="1-06-0-math.html">
|
|
|
|
|
|
Numbers and Math
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<ul class="articles">
|
|
|
|
|
|
<li class="chapter " data-level="3.1.6.1" data-path="1-06-01-integers.html">
|
|
|
|
<a href="1-06-01-integers.html">
|
|
|
|
|
|
Integers
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.2" data-path="1-06-02-more-integers.html">
|
|
|
|
<a href="1-06-02-more-integers.html">
|
|
|
|
|
|
More Integers
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.3" data-path="1-06-03-hexadecimal-notation.html">
|
|
|
|
<a href="1-06-03-hexadecimal-notation.html">
|
|
|
|
|
|
Hexadecimal Integer Notation
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.4" data-path="1-06-04-octal-notation.html">
|
|
|
|
<a href="1-06-04-octal-notation.html">
|
|
|
|
|
|
Octal Integer Notation
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.5" data-path="1-06-05-binary-notation.html">
|
|
|
|
<a href="1-06-05-binary-notation.html">
|
|
|
|
|
|
Binary Integer Notation
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.6" data-path="1-06-06-ratios.html">
|
|
|
|
<a href="1-06-06-ratios.html">
|
|
|
|
|
|
Ratios and Rational Numbers
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.7" data-path="1-06-07-floating-point.html">
|
|
|
|
<a href="1-06-07-floating-point.html">
|
|
|
|
|
|
Floating-point Numbers
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.8" data-path="1-06-08-constants.html">
|
|
|
|
<a href="1-06-08-constants.html">
|
|
|
|
|
|
Numeric Constants
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.9" data-path="1-06-09-complex-numbers.html">
|
|
|
|
<a href="1-06-09-complex-numbers.html">
|
|
|
|
|
|
Complex Numbers
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.10" data-path="1-06-10-arithmetic.html">
|
|
|
|
<a href="1-06-10-arithmetic.html">
|
|
|
|
|
|
Arithmetic
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.11" data-path="1-06-11-more-arithmetic.html">
|
|
|
|
<a href="1-06-11-more-arithmetic.html">
|
|
|
|
|
|
More Arithmetic
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.12" data-path="1-06-12-even-more-arithmetic.html">
|
|
|
|
<a href="1-06-12-even-more-arithmetic.html">
|
|
|
|
|
|
Even More Arithmetic
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.13" data-path="1-06-13-exponents.html">
|
|
|
|
<a href="1-06-13-exponents.html">
|
|
|
|
|
|
Exponents
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.14" data-path="1-06-14-logarithms.html">
|
|
|
|
<a href="1-06-14-logarithms.html">
|
|
|
|
|
|
Logarithms
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.15" data-path="1-06-15-trigonometry.html">
|
|
|
|
<a href="1-06-15-trigonometry.html">
|
|
|
|
|
|
Trigonometry
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.6.16" data-path="1-06-16-psuedorandom-numbers.html">
|
|
|
|
<a href="1-06-16-psuedorandom-numbers.html">
|
|
|
|
|
|
Pseudo-Random Numbers
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.7" data-path="1-07-0-arrays.html">
|
|
|
|
<a href="1-07-0-arrays.html">
|
|
|
|
|
|
Extra Credit: Arrays and Vectors
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.8" data-path="1-08-0-variables.html">
|
|
|
|
<a href="1-08-0-variables.html">
|
|
|
|
|
|
Variables, Parameters, and Constants
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.9" data-path="1-09-0-closures.html">
|
|
|
|
<a href="1-09-0-closures.html">
|
|
|
|
|
|
Extra Credit: Closures
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.10" data-path="1-10-0-functions.html">
|
|
|
|
<a href="1-10-0-functions.html">
|
|
|
|
|
|
Functions and Macros
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.11" data-path="1-11-0-text-adventure.html">
|
|
|
|
<a href="1-11-0-text-adventure.html">
|
|
|
|
|
|
Extra Credit: A Simple Text Adventure
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.12" data-path="1-12-0-namespaces.html">
|
|
|
|
<a href="1-12-0-namespaces.html">
|
|
|
|
|
|
Namespaces, Symbols, Packages, and Systems
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.13" data-path="1-13-0-simple-web-app.html">
|
|
|
|
<a href="1-13-0-simple-web-app.html">
|
|
|
|
|
|
Extra Credit: A Simple Web Application
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.14" data-path="1-14-0-conditionals.html">
|
|
|
|
<a href="1-14-0-conditionals.html">
|
|
|
|
|
|
Conditionals
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.15" data-path="1-15-0-command-line-utility.html">
|
|
|
|
<a href="1-15-0-command-line-utility.html">
|
|
|
|
|
|
Extra Credit: Command-Line Utilities
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.16" data-path="1-16-0-map-loop.html">
|
|
|
|
<a href="1-16-0-map-loop.html">
|
|
|
|
|
|
Mapping and Looping
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.17" data-path="1-17-0-iterate.html">
|
|
|
|
<a href="1-17-0-iterate.html">
|
|
|
|
|
|
Extra Credit: Revisiting Loops with Iterate
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.18" data-path="1-18-0-format.html">
|
|
|
|
<a href="1-18-0-format.html">
|
|
|
|
|
|
Format Strings
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.19" data-path="1-19-0-dsl.html">
|
|
|
|
<a href="1-19-0-dsl.html">
|
|
|
|
|
|
Extra Credit: Domain Specific Languages
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="3.1.20" data-path="1-20-0-review.html">
|
|
|
|
<a href="1-20-0-review.html">
|
|
|
|
|
|
Part One in Review
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li class="header">PART TWO</li>
|
|
|
|
|
|
|
|
<li class="chapter " data-level="4.1" data-path="2-0-0-overview.html">
|
|
|
|
<a href="2-0-0-overview.html">
|
|
|
|
|
|
The Suffusion of Blue
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<ul class="articles">
|
|
|
|
|
|
<li class="chapter " data-level="4.1.1" data-path="2-01-0-programming-paradigms.html">
|
|
|
|
<a href="2-01-0-programming-paradigms.html">
|
|
|
|
|
|
Programming Paradigms
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.2" data-path="2-02-0-regex.html">
|
|
|
|
<a href="2-02-0-regex.html">
|
|
|
|
|
|
Extra Credit: Regular Expressions
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.3" data-path="2-03-0-objects-control.html">
|
|
|
|
<a href="2-03-0-objects-control.html">
|
|
|
|
|
|
Objects and Control Structures
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.4" data-path="2-04-0-data-persistence.html">
|
|
|
|
<a href="2-04-0-data-persistence.html">
|
|
|
|
|
|
Extra Credit: Persistence and Databases
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.5" data-path="2-05-0-extended-types.html">
|
|
|
|
<a href="2-05-0-extended-types.html">
|
|
|
|
|
|
Extended Types
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.6" data-path="2-06-0-threads-memos-parallel.html">
|
|
|
|
<a href="2-06-0-threads-memos-parallel.html">
|
|
|
|
|
|
Extra Credit: Concurrency and Memoization
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.7" data-path="2-07-0-logic-and-more-math.html">
|
|
|
|
<a href="2-07-0-logic-and-more-math.html">
|
|
|
|
|
|
Logic and Advanced Math
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.8" data-path="2-08-0-number-theory.html">
|
|
|
|
<a href="2-08-0-number-theory.html">
|
|
|
|
|
|
Extra Credit: Number Theory
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.9" data-path="2-09-0-binary-octets-bits.html">
|
|
|
|
<a href="2-09-0-binary-octets-bits.html">
|
|
|
|
|
|
Binary Streams, Octet-Vectors, and Bit-Vectors
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.10" data-path="2-10-0-improved-text-adventure-engine.html">
|
|
|
|
<a href="2-10-0-improved-text-adventure-engine.html">
|
|
|
|
|
|
Extra Credit: An Improved Text Adventure Engine
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.11" data-path="2-11-0-conditions.html">
|
|
|
|
<a href="2-11-0-conditions.html">
|
|
|
|
|
|
Conditions and Error Handling
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.12" data-path="2-12-0-2d-game.html">
|
|
|
|
<a href="2-12-0-2d-game.html">
|
|
|
|
|
|
Extra Credit: Write a 2D Game
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.13" data-path="2-13-0-compiler.html">
|
|
|
|
<a href="2-13-0-compiler.html">
|
|
|
|
|
|
The Compiler
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.14" data-path="2-14-0-tree-shaker.html">
|
|
|
|
<a href="2-14-0-tree-shaker.html">
|
|
|
|
|
|
Extra Credit: Write a Tree-Shaker
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.15" data-path="2-15-0-docs-and-inspection.html">
|
|
|
|
<a href="2-15-0-docs-and-inspection.html">
|
|
|
|
|
|
Documentation and Inspection
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.16" data-path="2-16-0-foreign-libs.html">
|
|
|
|
<a href="2-16-0-foreign-libs.html">
|
|
|
|
|
|
Extra Credit: Foreign Libraries in Lisp
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.17" data-path="2-17-0-debugging-testing.html">
|
|
|
|
<a href="2-17-0-debugging-testing.html">
|
|
|
|
|
|
Debugging and Unit Testing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.18" data-path="2-18-0-ffi.html">
|
|
|
|
<a href="2-18-0-ffi.html">
|
|
|
|
|
|
Extra Credit: Write a Foreign Function Interface
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.19" data-path="2-19-0-essential-libs.html">
|
|
|
|
<a href="2-19-0-essential-libs.html">
|
|
|
|
|
|
Essential Lisp Libraries
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.20" data-path="2-20-0-packaging-libs.html">
|
|
|
|
<a href="2-20-0-packaging-libs.html">
|
|
|
|
|
|
Extra Credit: Packaging Lisp Libraries
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="4.1.21" data-path="2-21-0-review.html">
|
|
|
|
<a href="2-21-0-review.html">
|
|
|
|
|
|
Detailed Syntax Review
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li class="header">PART THREE</li>
|
|
|
|
|
|
|
|
<li class="chapter " data-level="5.1" data-path="3-00-00-overview.html">
|
|
|
|
<a href="3-00-00-overview.html">
|
|
|
|
|
|
Lisp So(u)rcery
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<ul class="articles">
|
|
|
|
|
|
<li class="chapter " data-level="5.1.1" data-path="3-01-00-web-apps.html">
|
|
|
|
<a href="3-01-00-web-apps.html">
|
|
|
|
|
|
Real-world Web Apps
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.2" data-path="3-02-00-typesetting.html">
|
|
|
|
<a href="3-02-00-typesetting.html">
|
|
|
|
|
|
Typesetting
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.3" data-path="3-03-00-mobile.html">
|
|
|
|
<a href="3-03-00-mobile.html">
|
|
|
|
|
|
Native Mobile Applications
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.4" data-path="3-04-00-gui.html">
|
|
|
|
<a href="3-04-00-gui.html">
|
|
|
|
|
|
Cross-platform Desktop Applications
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.5" data-path="3-05-00-system-utils.html">
|
|
|
|
<a href="3-05-00-system-utils.html">
|
|
|
|
|
|
Drivers, Daemons, and System-Utilities
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.6" data-path="3-06-00-reverse-engineering.html">
|
|
|
|
<a href="3-06-00-reverse-engineering.html">
|
|
|
|
|
|
Reverse Engineering
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.7" data-path="3-07-00-graphics.html">
|
|
|
|
<a href="3-07-00-graphics.html">
|
|
|
|
|
|
Graphics Rendering
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.8" data-path="3-08-00-gaming.html">
|
|
|
|
<a href="3-08-00-gaming.html">
|
|
|
|
|
|
OpenGL, SDL, and 3D Game Development
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.9" data-path="3-09-00-audio.html">
|
|
|
|
<a href="3-09-00-audio.html">
|
|
|
|
|
|
Audio Generation and Manipulation
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.10" data-path="3-10-00-data.html">
|
|
|
|
<a href="3-10-00-data.html">
|
|
|
|
|
|
Data Aggregation and Analysis
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.11" data-path="3-11-00-cryptosec.html">
|
|
|
|
<a href="3-11-00-cryptosec.html">
|
|
|
|
|
|
Cryptography and Security
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.12" data-path="3-12-00-fintech.html">
|
|
|
|
<a href="3-12-00-fintech.html">
|
|
|
|
|
|
Financial Software and Crypto-Currencies
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.13" data-path="3-13-00-scientific-computing.html">
|
|
|
|
<a href="3-13-00-scientific-computing.html">
|
|
|
|
|
|
Scientific Computing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.14" data-path="3-14-00-computational-physics.html">
|
|
|
|
<a href="3-14-00-computational-physics.html">
|
|
|
|
|
|
Computational Physics
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.15" data-path="3-15-00-quantum-computing.html">
|
|
|
|
<a href="3-15-00-quantum-computing.html">
|
|
|
|
|
|
Quantum Computing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.16" data-path="3-16-00-nlp.html">
|
|
|
|
<a href="3-16-00-nlp.html">
|
|
|
|
|
|
Natural Language Processing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.17" data-path="3-17-00-ai.html">
|
|
|
|
<a href="3-17-00-ai.html">
|
|
|
|
|
|
Artificial Intelligence
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.18" data-path="3-18-00-robotics.html">
|
|
|
|
<a href="3-18-00-robotics.html">
|
|
|
|
|
|
Robotics
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.19" data-path="3-19-00-space-tech.html">
|
|
|
|
<a href="3-19-00-space-tech.html">
|
|
|
|
|
|
Space Tech
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.20" data-path="3-20-00-neurotech.html">
|
|
|
|
<a href="3-20-00-neurotech.html">
|
|
|
|
|
|
Neuroscience and Thought-Controlled Computing
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.21" data-path="3-21-00-lispos.html">
|
|
|
|
<a href="3-21-00-lispos.html">
|
|
|
|
|
|
A Simple LispOS
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.22" data-path="3-22-00-lisp-machine.html">
|
|
|
|
<a href="3-22-00-lisp-machine.html">
|
|
|
|
|
|
Build Your Own Lisp Machine
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
<li class="chapter " data-level="5.1.23" data-path="3-23-00-gov-mil.html">
|
|
|
|
<a href="3-23-00-gov-mil.html">
|
|
|
|
|
|
Government and Military Grade Systems
|
|
|
|
</a>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
<li class="divider"></li>
|
|
|
|
<li>
|
|
<a href="https://www.gitbook.com" target="blank" class="gitbook-link">
|
|
Published with GitBook
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
|
|
|
|
</nav>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="book-body">
|
|
|
|
<div class="body-inner">
|
|
|
|
|
|
|
|
<div class="book-header" role="navigation">
|
|
|
|
|
|
<!-- Title -->
|
|
<h1>
|
|
<i class="fa fa-circle-o-notch fa-spin"></i>
|
|
<a href="index.html" >Who Is This Book For?</a>
|
|
</h1>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="page-wrapper" tabindex="-1" role="main">
|
|
<div class="page-inner">
|
|
|
|
<div id="book-search-results">
|
|
<div class="search-noresults">
|
|
|
|
<section class="normal markdown-section">
|
|
|
|
<h1 id="preface-pt-iii">Preface pt. III</h1>
|
|
<h2 id="who-is-this-book-for">Who Is This Book For?</h2>
|
|
<blockquote>
|
|
<p>"Do not handicap your children by making their lives easy."</p>
|
|
<footer>Robert A. Heinlein, <em>Time Enough for Love</em></footer>
|
|
|
|
</blockquote>
|
|
<p>Programming books can be tedious, and usually come in only one of two bland flavours---so basic an introduction you know less about the language after reading the book, or so dense a tome it is not useful outside an ivy-league university's computer science program. <em>The Hard Way</em> is different.</p>
|
|
<p>You don't have to know anything about programming or computer science to learn Lisp with this book, but I'm not going to talk down to you either. I'm going to assume that you know that learning any new skill is hard for everyone, and that you need to work hard in order to succeed.</p>
|
|
<p>Sometimes, you might not understand what I'm talking about, so I also expect you to take advantage of all the free research tools available on the internet---search engines, dictionaries, thesauri, encyclopedias, reference works, academic papers, programming blogs, and more. Any time you feel completely boggled, you should turn to these. I will be as casual as possible in my presentation, but sometimes it makes more sense to be formal.</p>
|
|
<p>That being said, Lispers of all experience levels should benefit from this book. We'll be exploring the language through real, immediately useful source code examples, and dissecting the language down to its core. Later on in the book, we'll also be covering a wide variety of advanced, relevant practical applications using a selection of the most popular and powerful libraries from the Lisp community.</p>
|
|
<p>So in summary, this book is for you if:</p>
|
|
<ul>
|
|
<li>You know nothing about programming, but want to learn</li>
|
|
<li>You tried to learn Lisp before, but other books made it seem too hard or not useful</li>
|
|
<li>You are an experienced programmer considering a move to Lisp</li>
|
|
<li>You are already a Lisper, but want to take your code to the next level, or</li>
|
|
<li>You simply haven't seen what all the fuss is about when it comes to Lisp---but you keep hearing how amazing Lisp is, so here you are reading another book about it</li>
|
|
</ul>
|
|
<h3 id="practice-and-persistence">Practice and Persistence</h3>
|
|
<p>To learn any new skill, you have to take the time, while applying the five rules of learning the hard way. You'll have good days and bad, times when you feel inspired and everything makes perfect sense, and times when you would rather just veg-out in front of the TV because you feel completely brain-dead already. Keep in mind that to maintain a skill, the rule of thumb is to spend <em>at least</em> two hours a day practicing. To improve an existing skill or learn a new one, it may require a lot more commitment from you.</p>
|
|
<p>Once again, don't let yourself be disheartened if some days you can't seem to make sense of the exercises and material. Learning any new skill takes a considerable shift in the way you think, as well as effort. Also, don't let yourself get disheartened if you feel like you're not progressing fast enough---there's no timeline for the exercises, you're not competing with anyone else for the top grade. You should take the time you need to complete each exercise at your own pace, so that you actually learn the material that the exercise covers.</p>
|
|
<p>The best advice I can offer for when you hit the wall is to stick to the five steps of the Hard Way, no matter what. Force yourself to work through the next exercise, even if it makes no sense. You might just wake up the next day and suddenly get it---or you may need to repeat it a few times. Persistence pays off, and if you stick with this methodology no matter what challenges you face, you will triumph.</p>
|
|
<h3 id="attitude-and-intelligence">Attitude and Intelligence</h3>
|
|
<p>Some of you will think I'm joking when I say, "forget everything you know." I assure you, I'm not. Lisp is different than other languages---it's not imperative, procedural, object-oriented, or functional; it's <em>multi-paradigm</em>. You need to be willing to set your ego aside and remember that everyone has more to learn than they have yet learned or ever can be learned. Yes, Lisp is <em>that</em> different from other languages, even from other multi-paradigm programming languages. If you take this to heart, you will discover that there is always something new to discover.</p>
|
|
<p>From a technical perspective, intelligence is more of an attitude problem than a measure of ability. When you think you are smart, you tend to think you already know everything and have all the answers. This makes learning new skills an uphill battle. You might not be guaranteed to fail at everything new when you already think you know everything, but you will find yourself easily discouraged by "boredom" as new knowledge is beaten away by your ever-swelling ego.</p>
|
|
<p>Recognizing your own ignorance up-front allows you to learn without self-sabotage. It is the wisdom of the ancients, every great artist's secret weapon, and an indispensable tool to a programmer. And since The Lisp Way is so fundamentally different from other approaches to programming, this minor attitude adjustment will help you see Lisp without the blinders of previous experience.</p>
|
|
<h3 id="the-end-goal">The End-Goal</h3>
|
|
<p>The end-goal of teaching Lisp is to somehow convey the concept of 'grokking' Lisp to new students of the language. The main challenge with this task, in my humble opinion, is that not enough emphasis has been placed on first forgetting everything you know, and second on the core syntax of Lisp where the symmetry with the human mind and the fractal cosmology model of the universe are most obvious. While other books on Lisp leave the matter of grokking open, hoping that by the end the reader will just grok grokking for themselves, in this book, grokking is a first-class citizen of your Lisp education. It's that important.</p>
|
|
<p>Lisp is, at its heart, a very mystical language which blurs the line between programming and magic. It is so inspired that, as one of my blog readers suggested, it seems more as though it was created by the ancient Egyptian god of writing and magic, Thoth, and handed down to John McCarthy in revelation. Several notable Lispers have even described that moment of their sudden awakening to understanding of Lisp as a religious experience, a suffusion of blue inspiring deep spiritual sentiments and a tendency towards prophesy.</p>
|
|
<p>This is where the term 'grokking' comes into the picture. It was coined by speculative/science fiction author Robert A. Heinlein in his novel, Stranger in a Strange Land, to describe the experience of knowing something so deeply that you become a part of it as much as it becomes a part of you. In short, Grokking is gnosis for the transhuman age. So being that learning Lisp shares so much in common with mystical initiation, using the initiatory techniques of Occult orders in teaching Lisp makes a lot of sense. This is why the Hard Way is the road to the Lisp Way, and why even experienced Lisp, Scheme, Clojure, Haskell, and OCaml programmers will benefit as greatly from this book as an absolute beginner.</p>
|
|
|
|
|
|
</section>
|
|
|
|
</div>
|
|
<div class="search-results">
|
|
<div class="has-results">
|
|
|
|
<h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span class='search-query'></span>"</h1>
|
|
<ul class="search-results-list"></ul>
|
|
|
|
</div>
|
|
<div class="no-results">
|
|
|
|
<h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<a href="preface-part-two.html" class="navigation navigation-prev " aria-label="Previous page: The Hard Way is Easier">
|
|
<i class="fa fa-angle-left"></i>
|
|
</a>
|
|
|
|
|
|
<a href="introduction.html" class="navigation navigation-next " aria-label="Next page: Lisp: A Future History">
|
|
<i class="fa fa-angle-right"></i>
|
|
</a>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<script>
|
|
var gitbook = gitbook || [];
|
|
gitbook.push(function() {
|
|
gitbook.page.hasChanged({"page":{"title":"Who Is This Book For?","level":"2.3","depth":1,"next":{"title":"Lisp: A Future History","level":"2.4","depth":1,"path":"introduction.md","ref":"introduction.md","articles":[]},"previous":{"title":"The Hard Way is Easier","level":"2.2","depth":1,"path":"preface-part-two.md","ref":"preface-part-two.md","articles":[]},"dir":"ltr"},"config":{"plugins":["hints","folding-chapters"],"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"hints":{"danger":"fa fa-exclamation-circle","info":"fa fa-info-circle","tip":"fa fa-mortar-board","working":"fa fa-wrench"},"folding-chapters":{},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"theme":"default","author":"\"the Phoeron\" Colin J.E. Lupton","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"index.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"Learn Lisp The Hard Way","gitbook":"*"},"file":{"path":"preface-part-three.md","mtime":"2022-08-23T00:01:55.640Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2022-08-24T16:15:01.957Z"},"basePath":".","book":{"language":""}});
|
|
});
|
|
</script>
|
|
</div>
|
|
|
|
|
|
<script src="gitbook/gitbook.js"></script>
|
|
<script src="gitbook/theme.js"></script>
|
|
|
|
|
|
<script src="gitbook/gitbook-plugin-folding-chapters/folding-chapters.js"></script>
|
|
|
|
|
|
|
|
<script src="gitbook/gitbook-plugin-search/search-engine.js"></script>
|
|
|
|
|
|
|
|
<script src="gitbook/gitbook-plugin-search/search.js"></script>
|
|
|
|
|
|
|
|
<script src="gitbook/gitbook-plugin-lunr/lunr.min.js"></script>
|
|
|
|
|
|
|
|
<script src="gitbook/gitbook-plugin-lunr/search-lunr.js"></script>
|
|
|
|
|
|
|
|
<script src="gitbook/gitbook-plugin-sharing/buttons.js"></script>
|
|
|
|
|
|
|
|
<script src="gitbook/gitbook-plugin-fontsettings/fontsettings.js"></script>
|
|
|
|
|
|
|
|
</body>
|
|
</html>
|
|
|