|
|
1.1 ! root 1: TTTTTTTTT EEEEEEE M M PPPPP L AA TTTTTTTTT EEEEEEE ! 2: T E MM MM P P L A A T E ! 3: T EEEEE M M M M PPPPP L AAAAAA T EEEEE ! 4: T E M M M P L A A T E ! 5: T EEEEEEE M M P LLLLLL A A T EEEEEEE ! 6: ! 7: Structure Definition Information Template ! 8: ! 9: Header ! 10: ||=========================================|| ! 11: || 0 unique number (integer) || ! 12: || 1 *pearldefinition* tag (atom ptr) || ! 13: || 2 length (integer) || ! 14: || 3 default instance (core ptr) || ! 15: || 4 isa (core ptr) || ! 16: || 5 print name (atom ptr) || ! 17: || 6 hash alias (integer) || ! 18: || 7 hash focus (integer) || ! 19: || 8 expansion list (list ptr) || ! 20: || 9 base hooks (lisp ptr) || ! 21: ||=========================================|| ! 22: ! 23: and for each slot (multiply slot number by 4 and add): ! 24: ||=========================================|| ! 25: || +6 free (28)! enforce (1) ! hash (6) || ! 26: || +7 type number (integer) || ! 27: || +8 slot print name (atom ptr) || ! 28: || +9 pp set info (atom ptr) || ! 29: ||=========================================|| ! 30: ! 31: ! 32: ! 33: ! 34: Structure Instance Template ! 35: ! 36: Header ! 37: ||=========================================|| ! 38: || 0 definition (core ptr) || ! 39: || 1 *pearlinst* tag (atom ptr) || ! 40: || 2 a-list and alist copy (conscell) || ! 41: || 3 abbreviation (atom ptr) || ! 42: ||=========================================|| ! 43: ! 44: and for each slot (multiply slot number by 4 and add): ! 45: ||=========================================|| ! 46: || +0 value type (integer) || ! 47: || +1 value ( ? ptr) || ! 48: || +2 predicate list (list ptr) || ! 49: || +3 slothook list (list ptr) || ! 50: ||=========================================|| ! 51: ! 52: ! 53: ! 54: symbol template ! 55: ! 56: ||=========================================|| ! 57: || 0 unique number (integer) || ! 58: || 1 *pearlsymbol* tag (atom ptr) || ! 59: || 2 print name (atom ptr) || ! 60: ||=========================================|| ! 61: ! 62: ! 63: ! 64: data bases ! 65: ! 66: header ! 67: ||=========================================|| ! 68: || 0 name (atom ptr) || ! 69: || 1 *pearldb* tag (atom ptr) || ! 70: || 2 children (lisp ptr) || ! 71: || 3 active (t or nil) || ! 72: || 4 parent (lisp ptr) || ! 73: || 5 db1 (core ptr) || ! 74: || 6 db2 (core ptr) || ! 75: ||=========================================|| ! 76: ! 77: and for each hash slot i (a small 1 hash db and then a large 2/3 hash db): ! 78: ||=========================================|| ! 79: || i hash bucket (lisp ptr) || ! 80: ||=========================================|| ! 81: ! 82: ! 83: block template (3 cons-cells) ! 84: ! 85: b:Name ---+ ! 86: | ! 87: ||========V================================|| ! 88: || Name (atom) | ptr to vars part || ! 89: ||==========================|==============|| ! 90: | ! 91: ||==========V==============================|| ! 92: Name ---> || ptr to 2nd conscell | ptr to free vars || ! 93: ||==========|==============================|| ! 94: | ! 95: ||==========V==============================|| ! 96: || ptr to frozen vars | *pearlunbound* || ! 97: ||=========================================||
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.