-
Notifications
You must be signed in to change notification settings - Fork 36
/
Copy pathindex.htm
37 lines (37 loc) · 1.44 KB
/
index.htm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Anatomy of Programming Languages</title>
<meta name='viewport' content='width=device-width initial-scale=1'/>
</head>
<body style="font-family: verdana">
<h2 >Anatomy of Programming Languages</h2>
<p>By William R. Cook</p>
<p>An undergraduate textbook on programming languages.</p>
<p>Active development Spring 2013 to Spring 2021</p>
<p>Learn by doing, using Haskell. High-level outline of planned scope:</p>
<ul>
<li>Expressions & Variables</li>
<li>First-class Functions & Closures</li>
<li>Recursion, Fixed Points, Self-Application</li>
<li>Aspects of Computation: Errors, State, Non-determinism (Monads)</li>
<li>Parsing</li>
<li>Static Analysis, Type Checking</li>
<li>Data Abstraction: Objects and ADTs</li>
<li>Inheritance & Delegation</li>
<li>Domain-Specific Languages</li>
<li>Partial Evaluation</li>
</ul>
<p>Read the code as you would read poetry.</p>
<p>All code can be executed directly in GHCI.</p>
<h3>Three formats:</h3>
<ul>
<li><a href="anatomy.htm"><b>HTML</b></a></li>
<li><a href="anatomyVerbatim.pdf">Verbatim Haskell text</a></li>
<li><a href="anatomy.pdf">Pretty Haskell text</a></li>
</ul>
<p><a href="https://github.com/w7cook/AoPL">Source available on GitHub</a></p>
<p>Comments and collaborators welcome!</p>
</body>
</html>