HAKMEM

From Wikipedia, the free encyclopedia

HAKMEM, alternatively known as AI Memo 239, is a February 1972 "memo" (technical report) of the MIT AI Lab containing a wide variety of hacks, including useful and clever algorithms for mathematical computation, some number theory and schematic diagrams for hardware[1] – in Guy L. Steele's words, "a bizarre and eclectic potpourri of technical trivia".[2] Contributors included about two dozen members and associates of the AI Lab. The title of the report is short for "hacks memo", abbreviated to six upper case characters that would fit in a single PDP-10 machine word (using a six-bit character set).[2]

History[edit]

HAKMEM is notable as an early compendium of algorithmic technique, particularly for its practical bent, and as an illustration of the wide-ranging interests of AI Lab people of the time, which included almost anything other than AI research.

HAKMEM contains original work in some fields, notably continued fractions.[citation needed]

Introduction[edit]

Compiled with the hope that a record of the random things people do around here can save some duplication of effort -- except for fun.
Here is some little known data which may be of interest to computer hackers. The items and examples are so sketchy that to decipher them may require more sincerity and curiosity than a non-hacker can muster. Doubtless, little of this is new, but nowadays it's hard to tell. So we must be content to give you an insight, or save you some cycles, and to welcome further contributions of items, new or used.

See also[edit]

References[edit]

  1. ^ Schroeppel, Richard C.; Orman, Hilarie K. (1972-02-29). "compilation". HAKMEM. By Beeler, Michael; Gosper, Ralph William; Schroeppel, Richard C. (report). Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, Massachusetts, USA. MIT AI Memo 239.
  2. ^ a b Steele, Guy L. (2013) [2002]. foreword. Hacker's Delight. By Warren Jr., Henry S. (2 ed.). Addison Wesley - Pearson Education, Inc. p. xi. ISBN 978-0-321-84268-8. 0-321-84268-5. ([1])

External links[edit]