Skip to content

Commit 6ef7b00

Browse files
author
doyougnu
committed
glossary: add more normal forms
1 parent a6463ff commit 6ef7b00

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

src/glossary.rst

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,13 @@ Glossary
144144

145145
See :ref:`What is Fusion <canonical-fusion>`.
146146

147+
HNF : Normal Forms
148+
149+
An expression that is in *head normal form* is a value which contains at
150+
least one :term:`thunk`. If the value does not contain any thunks, then it
151+
is said to be in normal form (:term:`NF`). See
152+
:cite:t:`jones1992implementing` Section 3.1 for more.
153+
147154
Info Table : Runtime
148155

149156
Every heap allocated object in the runtime system keeps an information
@@ -254,6 +261,14 @@ Glossary
254261
:term:`Cardinality Analysis`. See :cite:t:`hoCardinality` and
255262
:cite:t:`callArityVsDemandAnalysis` for more.
256263

264+
NF : Normal Forms
265+
266+
An expression that is in *normal form* is a fully evaluated expression and
267+
is a value which contains no thunks. This is in contrast to weak head
268+
normal form (:term:`WHNF`) and head normal form (:term:`HNF`), both of
269+
which may contain thunks. See :cite:t:`jones1992implementing` Section 3.1
270+
for more.
271+
257272
One-Shot Lambda
258273

259274
A one-shot lambda is a lambda that is called *exactly* once. These

0 commit comments

Comments
 (0)