Haskellers often love their tiny identifiers, especially single letters and especially when they wrote the code. Other haskellers and especially non-haskellers hate them because they don't seem to mean anything, even when they do. Hopefully this dictionary can help!
Terms
Identifier(s)
|
Expansion
|
Domain
|
Description
|
c,k
|
continuation
|
|
|
e, env
|
environment
|
Compilers, interpreters and other language processors
|
An environment binding identifiers to something
|
e, err
|
error or exception
|
Error-handling
|
|
f,g,h
|
function
|
Higher-order programming
|
A function of some sort
|
i
|
identifier
|
language processors
|
|
i,j,k
|
index
|
Data structures
|
|
k
|
key
|
Data structures
|
Similar to an index, used with data structures mapping keys to values
|
k
|
konstant?
|
|
A number, probably a constant, as in n+k patterns
|
n,m
|
(natural?) number
|
|
Generally either a natural or an integer
|
p
|
predicate
|
|
|
t
|
time
|
Simulation, interaction, domains involving time
|
|
t
|
type
|
Compilers, type-checkers etc
|
|
v
|
value
|
Data structures, interpreters, ...
|
|
x,y,z
|
thingy, other thingy, wossname
|
Abstract code
|
Commonly used when we know nothing about the value in question
|
xs,ys,zs
|
(list of) thingies
|
Abstract code
|
Lists of arbitrary values, or sometimes another collection type such as a set
|
Types
Identifier(s)
|
Expansion
|
Domain
|
Description
|
e, err
|
error or exception
|
Error-handling
|
|
f
|
functor
|
|
|
k
|
key
|
Data structures
|
Similar to an index, used with data structures mapping keys to values
|
m
|
monad
|
|
|
t
|
type
|
|
|
v
|
value
|
Data structures, interpreters, ...
|
|
w
|
comonad
|
|
|
x,y,z
|
thingy, other thingy, wossname
|
Abstract code
|
Commonly used when we know nothing about the value in question
|