Index


Abelson, Harold, 10
abs, 5
absolute path name, 5
acyclic graph, 17
adjacency list, 17
adjacency matrix, 17
agent, 12
AI, 12
ALGOL, 16
algorithm, 8, 16
alias, 7
ALU, 13
anchor text, 18
AND gate, 13
API, 10
append, 17
applet, 15
application layer, 15
application programming interface, 10
arithmetic and logic unit, 13
array, 14, 17
artificial intelligence, 10, 12, 16, 20
artificial life, 19
ASCII, 15
assembly language, 13
assert, 5
assoc, 11, 17
association list, 17, 17ii
atomism, 20
awk, 5


backward chaining, 5
bag, 17
bash, 6
Bayes, Thomas, 12
bc, 14
behaviorism, 20
big-endian, 13
bison, 12
bit, 13
Boole, George, 13
Boolean function, 13
Borning, Alan, 10
bot, 12
Bourne, Steven, 6
branch instruction, 13
breadth-first search, 17
brickOS, 14
Bush, Vannevar, 5
byte, 13, 13ii
bytecode, 11, 15


C, 8, 9, 13, 14, 16
C++, 10, 11
cadr, 17
car, 17
cat, 5
cd, 17
cdr, 5, 17
cellular automata, 19
central processing unit, 13
CGI, 15
chdir, 17
class, 11, 11ii
classification, 12
client-server model, 15
clock cycle, 14
collaborative filtering, 12
combinatorial optimization, 19
combinatorics, 16
command language, 6
comments, 14
    Java and C, 14
    machine code, 13
Common Lisp, 5
compiler, 13
composite data type, 17
computational complexity, 16
computational geometry, 17
computational model, 9
cond, 11
conditional probability, 12
configuration space, 17
connected graph, 17
cons, 11
consciousness, 20
constraint programming, 10
context switch, 14
convergence, 18
Conway, John, 19
Cook, Stephen, 16
CPU, 13, 14
    cycle, 14
cross section, 17
crossover operator, 19
csh, 6
curl, 18
cyborgs, 20


DAG, 17
Darwin, Charles, 19
data mining, 7
data structure, 8, 16, 17
data-link layer, 15
database, 7
    attribute, 7
    join, 7
    query, 7
    record, 7
    table, 7
debugging, 9
decidability, 16
decision tree, 12
define, 8, 9
degree of freedom, 17
Democritus, 20
Dennett, Daniel, 20
depth-first search, 17
determinism, 20
diagnostic characteristic, 12
digital abstraction, 13, 14
directed graph, 17
directory
    home, 5
    root, 5
    working, 6, 17
distribution, 18
    uniform, 18, 19
do, 9
documentation, 14
dot product, 17
dynamic content, 15


echo, 6
edge, 17
Edsger Dijkstra, 17
egrep, 7
email, 12
environment variable, 6
escape character, 7
eval, 6
exceptions, 14
execi, 14
exponential scaling, 16
expressiveness, 10
expt, 16


factorial, 8
Fibonacci sequence, 16
field, 11
firewall, 5
fitness function, 19, 19ii
fixed point, 18
flex, 12
flip-flop, 13
flow of control, 6
for loop, 9
formal parameter, 9
Fortran, 5
free will, 20
frequency, 19
FTP, 15, 18
ftp, 15
full adder, 13
function, 9
    argument, 9
    definition, 9
functional programming, 17


gene, 19
genetic algorithm, 19
genetic operator, 19
GIF, 15
gigahertz, 14
GISP, 19
Gödel, Kurt, 16
golden mean, 16
graph, 17
    algorithm, 17
    directed, 17
    search, 17
    topology, 17, 18
    undirected, 17
grep, 7, 18


hacker, 11
half adder, 13
halting problem, 16
ham, 12
hash table, 17
histogram, 19
    word, 18
Holland, John, 19
hosting web pages, 15
HTML, 5, 15
HTTP, 15, 18
hyperlinks, 15
hypothesis, 19
    space, 19


implementation, 8
INBOX, 12
incompleteness, 16
infinite loop, 13, 18
info, 3
information retrieval, 18
inner product, 17
instance, 11
instantiate, 11
instruction address register, 13
interface, 8, 11
interrupt, 14
intractability, 16
inverse document frequency, 18
inverter, 13
IP, 15
ISO 8601, 11, 15


James, William, 20
Java, 8, 10, 11, 18
Java virtual machine, 11, 15
jobs, 6
Joy, Bill, 6
JPEG, 15
JSR, 14
jump instruction, 13


Kant, Immanuel, 20
Karp, Richard, 16
Kay, Alan, 16, 20
kernel, 6
kill, 14
kilobyte, 13
Knuth, Donald, 11, 20
Korn, David, 6
ksh, 6
Kurzweil, Ray, 20


Lamarck, Jean-Baptiste, 19
lambda, 10, 17
LAN, 15, 17
Laplace, Pierre-Simon, 20
latch, 13
Lego Mindstorms, 13, 14
length, 5
let, 10
Levin, Leonid, 16
lex, 12
lexer, 12
library, 10, 10ii, 11
Licklider, J. C. R., 5
linear algebra, 17
linear scaling, 16
link, 17
Lisp, 5
list, 11
list-ref, 11
list-tail, 11
little-endian, 13
ln, 17
loader, 13
local variable, 10
logarithm, 16
logic diagram, 13
logic gate, 13
ls, 5, 6, 17


machine language, 13
machine learning, 12
main, 8, 11, 14
make, 5
makefile, 5
man, 3
map, 5, 17, 19
Maple, 5
Mathematica, 5
Matlab, 5
matrix, 17, 18
McCarthy, John, 12, 16
McDermott, Drew, 20
megabyte, 13
megahertz, 14
memoization, 10
Mendel, Gregor, 19
method, 11
Mill, John Stuart, 20
mkdir, 17
multitasking, 14, 14ii
mutation, 19
mv, 5


NAND gate, 13
natural selection, 19
network layer, 15
Newcomen, Thomas, 8
Nietzsche, Friedrich, 20
node, 17
NOR gate, 13
normalization, 18
NOT gate, 13
NP-complete problem, 16
numerical analysis, 16


object-oriented programming, 10, 11
Occam’s razor, 12
opcode, 13
operant conditioning, 20
operating system, 5
option, 6
OR gate, 13


parameter, 9, 14
parser, 12
path, 17
Perl, 5, 18
perl, 5
Perlis, Alan, 10
physical layer, 15
piano-movers problem, 17
PID, 6, 14
pipes in Unix, 5, 6
PLT Scheme, 11
Polish notation, 8, 9
polynomial scaling, 16
POP, 14
port, 15
primary key, 7
probability distribution, 18
process, 6
    asynchronous, 6, 14
    heavyweight, 14
    identifier, 6, 14
    parent, 6
    thread, 14, 14ii, 14iii
processor, 13
processor clock, 14
program counter, 13
programming environment, 5
Prolog, 5, 7
    database, 5
    variables, 5
prompt, 5
protocol, 15
ps, 6, 14
pseudo-random number, 19
PUSH, 14
pwd, 6


quasi quote, 12
queue, 14


raisin bread, 12
RAM, 13, 14
random number, 19
random-access memory, 13
RCX, 14
recursive definition, 5, 8, 18
redirection, 6
    input (<), 6
    output (>), 6
register, 13
register machine, 13
regular expression, 7
relational database, 7
relative path name, 5
relay, 13
reverse, 5
rmdir, 17
robot, 13, 14
    arm, 17
    mobile, 13, 17
    program, 13, 14
root, 17
RTS, 14


Scheme, 5, 13, 16, 18
search engine, 18
sed, 5
semantics, 9
semaphore, 14
server, 15
server farm, 18
server process, 15
set!, 10
set-car!, 11
set-vector!, 11
sh, 5, 6
shell, 5, 6
    script, 5, 6
    secure, 5
    variable, 6, 17
sign bit, 13
sink, 17
Sketchpad, 10
Skinner, B. F., 20
sleep, 6
Smalltalk, 10, 10ii
SMTP, 15
sockets, 6
software engineering, 10
sort, 6, 18
spam, 12
spam filter, 12
specification, 8
SQL, 7, 15
ssh, 5
stack, 14
standard input, 6
standard output, 6
stemming algorithm, 18
stepper, 9
stop word, 18
string, 6
strongly connected graph, 17
structured data, 7
structured query language, 7
subgraph, 17
subroutine, 14
substitution model, 9, 10
subtree, 17
supervised learning, 12
Sussman, Gerald, 10
Sutherland, Ivan, 10
symbolic link, 5, 17
syntactic
    saccharin, 11
    salt, 11
    sugar, 11
syntax, 8


task management, 14
TCP, 15
tcsh, 6
TELNET, 15
term frequency, 18
thread, 14
thumbnail image, 18
time sharing, 12
token, 12
topology, 17
tour, 16, 19
training examples, 12
training set, 12
transition matrix, 18
transport layer, 15
transpose, 18
traveling salesman problem, 16, 19
tree, 17
truth table, 13
Turing, Alan, 16
typed variable, 8


UDP, 15
unicode, 15
uniq, 6
universal computer, 16, 20
URL, 15, 18
utilitarianism, 20


vector, 17, 18, 18ii
vector, 11
vector-ref, 11
vertex, 17
virtual memory, 14
VLSI, 13
von Neumann architecture, 13
von Neumann, John, 19


WAN, 17
wc, 5
whitespace, 6
wildcard, 5, 7


XHTML, 15
XOR gate, 13


yacc, 12
Yeager, Chuck, 16


Zeta Lisp, 11