TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Ivan Todoroski
from: Lynn Nash
date: 1999-01-05 22:53:00
subject: Some weird addressing...

IT>  And does the word "thunk" has any actual meaning in
English? I don't
IT>  have the dictionary handy to check it out (it went with the fallen
IT>  drive)

Denis can keep going on the rest because I missed the start. I do
think that  you might appreciate the internet jargon definition of
thunk.

 [...]
thunk /thuhnk/ n. 1. "A piece of coding which provides an address",
according to P. Z. Ingerman, who invented thunks in 1961 as a way of
binding actual parameters to their formal definitions in Algol-60
procedure calls.  If a procedure is called with an expression in the place
of a formal parameter, the compiler generates a thunk to compute the
expression and leave the address of the result in some standard location.
2. Later generalized into:  an expression, frozen together with its
environment, for later evaluation if and when needed (similar to what in
techspeak is called a 'closure').  The process of unfreezing these thunks
is called 'forcing'.  3. A stubroutine, in an overlay programming
environment, that loads and jumps to the correct overlay.  Compare
trampoline.  4. People and activities scheduled in a thunklike manner.
"It occurred to me the other day that I am rather accurately modeled by a
thunk --- I frequently need to be forced to completion."  --- paraphrased
from a plan file.

Historical note:  There are a couple of onomatopoeic myths circulating
about the origin of this term.  The most common is that it is the sound
made by data hitting the stack; another holds that the sound is that of
the data hitting an accumulator.  Yet another holds that it is the sound
of the expression being unfrozen at argument-evaluation time.  In fact,
according to the inventors, it was coined after they realized (in the wee
hours after hours of discussion) that the type of an argument in Algol-60
could be figured out in advance with a little compile-time thought,
simplifying the evaluation machinery.  In other words, it had 'already
been thought of'; thus it was christened a 'thunk', which is "the past
tense of 'think' at two in the morning".

[...]

--Lynn

 * SLMR 2.1a * Working with a WHILE...WEND mind in a DO...LOOP world

--- DB 1.39/004485
* Origin: The Diamond Bar BBS, San Dimas CA, 909-599-2088 (1:218/1001)
SEEN-BY: 396/1 632/0 371 633/260 262 267 270 371 635/444 506 728 639/252
SEEN-BY: 670/218
@PATH: 218/1001 3615/50 140/1 396/1 633/260 635/506 728 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.