Logiweb(TM)

13.2.5.6 Harvesting definitions

Prev Up Next Page 420 of 800 Search internet


As mentioned, harvesting scans a tree for proclamations and definitions. Whenever a definition ('define' or 'introduce') is found, harvesting adds the definition to the codex.

As an example, suppose the expansion of the base page with reference cardinal r from the previous three sections contains the following definition:

   (define (val) (f (u) (v)) (if (u) (v) (u)))

Harvesting first extracts the root of the first subtree. In the example, it extracts the 'val' symbol. Then it looks up the 'message' aspect of that symbol. In the present example, the 'val' symbol denotes the 'value' aspect. Then harvesting extracts the root of the second subtree. In the example, it extracts the 'f' symbol. Finally, harvesting sets the 'value' aspect of the 'f' symbol to the tree (define (value) (f (u) (v)) (if (u) (v) (u))). This allows to look up the definition of the value aspect of the f-symbol in the codex.

Note that the entire definition goes into the codex, not only the right hand side. That allows to look up e.g. the names of the parameters of the left hand side. Also, this allows to distinguish proclamations and definitions. A proclamation merely enters a string into the codex.

Prev Up Next Page 420 of 800 Search logiweb.eu

Copyright © 2010 Klaus Grue, GRD-2010-01-05