home *** CD-ROM | disk | FTP | other *** search
Emacs Compiled Lisp | 1998-05-21 | 7.8 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: Emacs Compiled Lisp
(other/emacsCompiledLisp).
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
1%
| dexvert
| Emacs Compiled Lisp (other/emacsCompiledLisp)
| magic
| Unsupported |
100%
| file
| Emacs/XEmacs v20 byte-compiled Lisp data
| default
| |
99%
| file
| data
| default
| |
100%
| TrID
| Emacs/XEmacs byte-compiled Lisp (generic)
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 45 4c 43 14 00 00 00 | 0a 3b 3b 3b 20 63 6f 6d |;ELC....|.;;; com|
|00000010| 70 69 6c 65 64 20 62 79 | 20 6a 75 73 74 69 6e 62 |piled by| justinb|
|00000020| 40 65 62 6f 6e 79 2e 63 | 72 61 79 2e 63 6f 6d 20 |@ebony.c|ray.com |
|00000030| 6f 6e 20 4d 6f 6e 20 4d | 61 72 20 20 39 20 31 32 |on Mon M|ar 9 12|
|00000040| 3a 33 37 3a 34 30 20 31 | 39 39 38 0a 3b 3b 3b 20 |:37:40 1|998.;;; |
|00000050| 66 72 6f 6d 20 66 69 6c | 65 20 2f 68 6f 6d 65 2f |from fil|e /home/|
|00000060| 61 73 70 65 6e 30 37 2f | 6a 75 73 74 69 6e 62 2f |aspen07/|justinb/|
|00000070| 72 6f 6f 74 73 2f 66 72 | 65 65 77 61 72 65 2f 78 |roots/fr|eeware/x|
|00000080| 65 6d 61 63 73 2f 32 30 | 2e 33 2f 78 65 6d 61 63 |emacs/20|.3/xemac|
|00000090| 73 2d 32 30 2e 33 2f 6c | 69 73 70 2f 74 6f 6f 6c |s-20.3/l|isp/tool|
|000000a0| 74 61 6c 6b 2f 74 6f 6f | 6c 74 61 6c 6b 2d 75 74 |talk/too|ltalk-ut|
|000000b0| 69 6c 2e 65 6c 0a 3b 3b | 3b 20 65 6d 61 63 73 20 |il.el.;;|; emacs |
|000000c0| 76 65 72 73 69 6f 6e 20 | 32 30 2e 34 20 22 45 6d |version |20.4 "Em|
|000000d0| 65 72 61 6c 64 22 20 58 | 45 6d 61 63 73 20 20 4c |erald" X|Emacs L|
|000000e0| 75 63 69 64 2e 0a 3b 3b | 3b 20 62 79 74 65 63 6f |ucid..;;|; byteco|
|000000f0| 6d 70 20 76 65 72 73 69 | 6f 6e 20 32 2e 32 35 20 |mp versi|on 2.25 |
|00000100| 58 45 6d 61 63 73 3b 20 | 32 32 2d 4d 61 72 2d 39 |XEmacs; |22-Mar-9|
|00000110| 36 2e 0a 3b 3b 3b 20 6f | 70 74 69 6d 69 7a 61 74 |6..;;; o|ptimizat|
|00000120| 69 6f 6e 20 69 73 20 6f | 6e 2e 0a 3b 3b 3b 20 74 |ion is o|n..;;; t|
|00000130| 68 69 73 20 66 69 6c 65 | 20 75 73 65 73 20 6f 70 |his file| uses op|
|00000140| 63 6f 64 65 73 20 77 68 | 69 63 68 20 64 6f 20 6e |codes wh|ich do n|
|00000150| 6f 74 20 65 78 69 73 74 | 20 69 6e 20 45 6d 61 63 |ot exist| in Emac|
|00000160| 73 20 31 39 2e 0a 0a 28 | 69 66 20 28 61 6e 64 20 |s 19...(|if (and |
|00000170| 28 62 6f 75 6e 64 70 20 | 27 65 6d 61 63 73 2d 76 |(boundp |'emacs-v|
|00000180| 65 72 73 69 6f 6e 29 0a | 09 20 28 6f 72 20 28 61 |ersion).|. (or (a|
|00000190| 6e 64 20 28 62 6f 75 6e | 64 70 20 27 65 70 6f 63 |nd (boun|dp 'epoc|
|000001a0| 68 3a 3a 76 65 72 73 69 | 6f 6e 29 20 65 70 6f 63 |h::versi|on) epoc|
|000001b0| 68 3a 3a 76 65 72 73 69 | 6f 6e 29 0a 09 20 20 20 |h::versi|on).. |
|000001c0| 20 20 28 73 74 72 69 6e | 67 2d 6c 65 73 73 70 20 | (strin|g-lessp |
|000001d0| 65 6d 61 63 73 2d 76 65 | 72 73 69 6f 6e 20 22 32 |emacs-ve|rsion "2|
|000001e0| 30 22 29 29 29 0a 20 20 | 20 20 28 65 72 72 6f 72 |0"))). | (error|
|000001f0| 20 22 60 74 6f 6f 6c 74 | 61 6c 6b 2d 75 74 69 6c | "`toolt|alk-util|
|00000200| 2e 65 6c 27 20 77 61 73 | 20 63 6f 6d 70 69 6c 65 |.el' was| compile|
|00000210| 64 20 66 6f 72 20 45 6d | 61 63 73 20 32 30 22 29 |d for Em|acs 20")|
|00000220| 29 0a 0a 28 6f 72 20 28 | 62 6f 75 6e 64 70 20 27 |)..(or (|boundp '|
|00000230| 63 75 72 72 65 6e 74 2d | 6c 6f 61 64 2d 6c 69 73 |current-|load-lis|
|00000240| 74 29 20 28 73 65 74 71 | 20 63 75 72 72 65 6e 74 |t) (setq| current|
|00000250| 2d 6c 6f 61 64 2d 6c 69 | 73 74 20 6e 69 6c 29 29 |-load-li|st nil))|
|00000260| 0a 0a 0a 23 40 34 39 38 | 20 49 6e 69 74 69 61 6c |...#@498| Initial|
|00000270| 69 7a 65 20 74 68 65 20 | 4e 74 68 20 74 6f 6f 6c |ize the |Nth tool|
|00000280| 74 61 6c 6b 20 6d 65 73 | 73 61 67 65 20 61 72 67 |talk mes|sage arg|
|00000290| 75 6d 65 6e 74 20 6f 66 | 20 4d 53 47 2e 0a 41 20 |ument of| MSG..A |
|000002a0| 6e 65 77 20 61 72 67 75 | 6d 65 6e 74 20 69 73 20 |new argu|ment is |
|000002b0| 63 72 65 61 74 65 64 20 | 69 66 20 6e 65 63 65 73 |created |if neces|
|000002c0| 73 61 72 79 2e 20 20 4e | 6f 20 61 74 74 65 6d 70 |sary. N|o attemp|
|000002d0| 74 20 74 6f 20 64 69 73 | 74 69 6e 67 75 69 73 68 |t to dis|tinguish|
|000002e0| 0a 62 65 74 77 65 65 6e | 20 73 74 72 69 6e 67 73 |.between| strings|
|000002f0| 20 74 68 61 74 20 63 6f | 6e 74 61 69 6e 20 62 69 | that co|ntain bi|
|00000300| 6e 61 72 79 20 64 61 74 | 61 20 61 6e 64 20 6f 72 |nary dat|a and or|
|00000310| 64 69 6e 61 72 79 20 73 | 74 72 69 6e 67 73 20 69 |dinary s|trings i|
|00000320| 73 20 6d 61 64 65 3b 0a | 61 6c 6c 20 6e 6f 6e 20 |s made;.|all non |
|00000330| 69 6e 74 65 67 65 72 20 | 61 72 67 75 6d 65 6e 74 |integer |argument|
|00000340| 20 76 61 6c 75 65 73 20 | 61 72 65 20 63 6f 6e 76 | values |are conv|
|00000350| 65 72 74 65 64 20 74 6f | 20 61 20 73 74 72 69 6e |erted to| a strin|
|00000360| 67 20 28 69 66 20 6e 6f | 74 20 61 0a 73 74 72 69 |g (if no|t a.stri|
|00000370| 6e 67 20 61 6c 72 65 61 | 64 79 29 20 61 6e 64 20 |ng alrea|dy) and |
|00000380| 6c 6f 61 64 65 64 20 77 | 69 74 68 20 74 74 5f 6d |loaded w|ith tt_m|
|00000390| 65 73 73 61 67 65 5f 61 | 72 67 5f 76 61 6c 5f 73 |essage_a|rg_val_s|
|000003a0| 65 74 28 29 2e 0a 41 70 | 70 6c 69 63 61 74 69 6f |et()..Ap|plicatio|
|000003b0| 6e 73 20 74 68 61 74 20 | 6e 65 65 64 20 74 6f 20 |ns that |need to |
|000003c0| 70 75 74 20 62 69 6e 61 | 72 79 20 64 61 74 61 20 |put bina|ry data |
|000003d0| 69 6e 74 6f 20 61 20 54 | 6f 6f 6c 54 61 6c 6b 20 |into a T|oolTalk |
|000003e0| 6d 65 73 73 61 67 65 0a | 61 72 67 75 6d 65 6e 74 |message.|argument|
|000003f0| 20 73 68 6f 75 6c 64 20 | 69 6e 69 74 69 61 6c 69 | should |initiali|
|00000400| 7a 65 20 74 68 65 20 61 | 72 67 75 6d 65 6e 74 20 |ze the a|rgument |
|00000410| 77 69 74 68 3a 0a 0a 20 | 20 20 28 73 65 74 2d 74 |with:.. | (set-t|
|00000420| 6f 6f 6c 74 61 6c 6b 2d | 6d 65 73 73 61 67 65 2d |ooltalk-|message-|
|00000430| 61 74 74 72 69 62 75 74 | 65 20 62 69 6e 2d 73 74 |attribut|e bin-st|
|00000440| 72 69 6e 67 20 6d 73 67 | 20 27 61 72 67 5f 62 76 |ring msg| 'arg_bv|
|00000450| 61 6c 20 61 72 67 2d 6e | 29 1f 0a 28 64 65 66 61 |al arg-n|)..(defa|
|00000460| 6c 69 61 73 20 27 69 6e | 69 74 69 61 6c 69 7a 65 |lias 'in|itialize|
|00000470| 2d 74 6f 6f 6c 74 61 6c | 6b 2d 6d 65 73 73 61 67 |-tooltal|k-messag|
|00000480| 65 2d 61 72 67 20 23 5b | 28 6d 73 67 20 6e 20 6d |e-arg #[|(msg n m|
|00000490| 6f 64 65 20 76 61 6c 75 | 65 20 76 74 79 70 65 29 |ode valu|e vtype)|
|000004a0| 20 22 08 54 c1 5c 6e c3 | 5c 22 5a 89 1c c5 56 ab | ".T.\n.|\"Z...V.|
|000004b0| 8e c6 5c 6e 0e 07 0e 08 | 23 88 0c 53 89 14 aa 6e |..\n....|#..S...n|
|000004c0| 29 0e 09 a8 ab 88 ca 0e | 09 5c 6e cb 08 24 87 0e |).......|.\n..$..|
|000004d0| 09 3b ab 88 ca 0e 09 5c | 6e cc 08 24 87 cd ce cf |.;.....\|n..$....|
|000004e0| 5c 6e 21 08 cf 0e 09 21 | 24 87 22 20 5b 6e 20 67 |\n!....!|$." [n g|
|000004f0| 65 74 2d 74 6f 6f 6c 74 | 61 6c 6b 2d 6d 65 73 73 |et-toolt|alk-mess|
|00000500| 61 67 65 2d 61 74 74 72 | 69 62 75 74 65 20 6d 73 |age-attr|ibute ms|
|00000510| 67 20 61 72 67 73 5f 63 | 6f 75 6e 74 20 6e 2d 61 |g args_c|ount n-a|
|00000520| 72 67 73 2d 6e 65 65 64 | 65 64 20 30 20 61 64 64 |rgs-need|ed 0 add|
|00000530| 2d 74 6f 6f 6c 74 61 6c | 6b 2d 6d 65 73 73 61 67 |-tooltal|k-messag|
|00000540| 65 2d 61 72 67 20 6d 6f | 64 65 20 76 74 79 70 65 |e-arg mo|de vtype|
|00000550| 20 76 61 6c 75 65 20 73 | 65 74 2d 74 6f 6f 6c 74 | value s|et-toolt|
|00000560| 61 6c 6b 2d 6d 65 73 73 | 61 67 65 2d 61 74 74 72 |alk-mess|age-attr|
|00000570| 69 62 75 74 65 20 61 72 | 67 5f 69 76 61 6c 20 61 |ibute ar|g_ival a|
|00000580| 72 67 5f 76 61 6c 20 65 | 72 72 6f 72 20 22 54 68 |rg_val e|rror "Th|
|00000590| 65 20 76 61 6c 75 65 20 | 73 70 65 63 69 66 69 65 |e value |specifie|
|000005a0| 64 20 66 6f 72 20 6d 73 | 67 20 25 73 20 61 72 67 |d for ms|g %s arg|
|000005b0| 75 6d 65 6e 74 20 25 64 | 2c 20 25 73 2c 20 6d 75 |ument %d|, %s, mu|
|000005c0| 73 74 20 62 65 20 61 20 | 73 74 72 69 6e 67 20 6f |st be a |string o|
|000005d0| 72 20 61 6e 20 69 6e 74 | 65 67 65 72 22 20 70 72 |r an int|eger" pr|
|000005e0| 69 6e 31 2d 74 6f 2d 73 | 74 72 69 6e 67 5d 20 37 |in1-to-s|tring] 7|
|000005f0| 20 28 23 24 20 2e 20 36 | 31 37 29 5d 29 0a 28 62 | (#$ . 6|17)]).(b|
|00000600| 79 74 65 2d 63 6f 64 65 | 20 22 c0 c1 c2 08 09 5c |yte-code| ".....\|
|00000610| 6e af 06 13 c3 0c 42 14 | c0 87 22 20 5b 54 54 5f |n.....B.|.." [TT_|
|00000620| 49 4e 20 54 54 5f 4f 55 | 54 20 54 54 5f 49 4e 4f |IN TT_OU|T TT_INO|
|00000630| 55 54 20 74 6f 6f 6c 74 | 61 6c 6b 2d 61 72 67 2d |UT toolt|alk-arg-|
|00000640| 6d 6f 64 65 2d 69 64 73 | 20 63 75 72 72 65 6e 74 |mode-ids| current|
|00000650| 2d 6c 6f 61 64 2d 6c 69 | 73 74 5d 20 36 29 0a 23 |-load-li|st] 6).#|
|00000660| 40 34 36 32 20 41 70 70 | 6c 79 20 49 4e 49 54 46 |@462 App|ly INITF|
|00000670| 4e 20 74 6f 20 65 61 63 | 68 20 74 68 65 20 70 6f |N to eac|h the po|
|00000680| 73 69 74 69 6f 6e 20 6d | 6f 64 65 20 76 61 6c 75 |sition m|ode valu|
|00000690| 65 20 61 6e 64 20 74 79 | 70 65 20 6f 66 0a 65 61 |e and ty|pe of.ea|
|000006a0| 63 68 20 61 72 67 75 6d | 65 6e 74 20 69 6e 20 74 |ch argum|ent in t|
|000006b0| 68 65 20 6c 69 73 74 2e | 20 20 54 68 65 20 76 61 |he list.| The va|
|000006c0| 6c 75 65 20 6f 66 20 49 | 4e 49 54 46 4e 20 73 68 |lue of I|NITFN sh|
|000006d0| 6f 75 6c 64 20 62 65 20 | 65 69 74 68 65 72 0a 27 |ould be |either.'|
|000006e0| 69 6e 69 74 69 61 6c 69 | 7a 65 2d 74 6f 6f 6c 74 |initiali|ze-toolt|
|000006f0| 61 6c 6b 2d 6d 65 73 73 | 61 67 65 2d 61 72 67 20 |alk-mess|age-arg |
|00000700| 6f 72 20 27 69 6e 69 74 | 69 61 6c 69 7a 65 2d 74 |or 'init|ialize-t|
|00000710| 6f 6f 6c 74 61 6c 6b 2d | 70 61 74 74 65 72 6e 2d |ooltalk-|pattern-|
|00000720| 61 72 67 2e 0a 53 65 65 | 20 60 6d 61 6b 65 2d 74 |arg..See| `make-t|
|00000730| 6f 6f 6c 74 61 6c 6b 2d | 6d 65 73 73 61 67 65 27 |ooltalk-|message'|
|00000740| 20 66 6f 72 20 61 20 64 | 65 73 63 72 69 70 74 69 | for a d|escripti|
|00000750| 6f 6e 20 6f 66 20 68 6f | 77 20 61 72 67 75 6d 65 |on of ho|w argume|
|00000760| 6e 74 73 20 61 72 65 20 | 73 70 65 63 69 66 69 65 |nts are |specifie|
|00000770| 64 2e 0a 57 65 20 64 69 | 73 74 69 6e 67 75 69 73 |d..We di|stinguis|
|00000780| 68 20 74 68 65 20 73 68 | 6f 72 74 20 66 6f 72 6d |h the sh|ort form|
|00000790| 20 66 6f 72 20 61 72 67 | 75 6d 65 6e 74 73 2c 20 | for arg|uments, |
|000007a0| 65 2e 67 2e 20 22 6a 75 | 73 74 2d 61 2d 76 61 6c |e.g. "ju|st-a-val|
|000007b0| 75 65 22 2c 20 0a 66 72 | 6f 6d 20 74 68 65 20 6c |ue", .fr|om the l|
|000007c0| 6f 6e 67 20 66 6f 72 6d | 20 62 79 20 63 68 65 63 |ong form| by chec|
|000007d0| 6b 69 6e 67 20 74 6f 20 | 73 65 65 20 69 66 20 74 |king to |see if t|
|000007e0| 68 65 20 61 72 67 75 6d | 65 6e 74 20 69 73 20 61 |he argum|ent is a|
|000007f0| 20 6c 69 73 74 20 77 68 | 6f 73 65 0a 63 61 72 20 | list wh|ose.car |
|00000800| 69 73 20 6f 6e 65 20 6f | 66 20 74 68 65 20 54 6f |is one o|f the To|
|00000810| 6f 6c 54 61 6c 6b 20 6d | 6f 64 65 20 76 61 6c 75 |olTalk m|ode valu|
|00000820| 65 73 20 6c 69 6b 65 20 | 54 54 5f 49 4e 4f 55 54 |es like |TT_INOUT|
|00000830| 2e 1f 0a 28 64 65 66 61 | 6c 69 61 73 20 27 69 6e |...(defa|lias 'in|
|00000840| 69 74 69 61 6c 69 7a 65 | 2d 74 6f 6f 6c 74 61 6c |itialize|-tooltal|
|00000850| 6b 2d 6d 65 73 73 61 67 | 65 2f 70 61 74 74 65 72 |k-messag|e/patter|
|00000860| 6e 2d 61 72 67 73 20 23 | 5b 28 69 6e 69 74 66 6e |n-args #|[(initfn|
|00000870| 20 6d 73 67 20 61 72 67 | 73 29 20 22 c0 19 5c 6e | msg arg|s) "..\n|
|00000880| ad df 5c 6e 40 89 1b 3a | ad 84 0b 40 0c b6 89 1d |..\n@..:|...@....|
|00000890| ab 84 0b 40 aa 82 0e 06 | 1e 07 0d ac 83 0b aa 8a |...@....|........|
|000008a0| 0b 41 ab 85 0b 41 40 aa | 81 c8 1e 09 0d ab 92 0b |.A...A@.|........|
|000008b0| 41 41 ab 8d 0b 41 41 40 | 3b ab 86 0b 41 41 40 aa |AA...AA@|;...AA@.|
|000008c0| 89 0e 09 a8 ab 83 ca aa | 81 cb 1e 0c 0e 0d 0e 0e |........|........|
|000008d0| 09 0e 07 0e 09 0e 0c 25 | 88 2d 5c 6e 41 12 09 54 |.......%|.-\nA..T|
|000008e0| 11 aa 1e 29 87 22 20 5b | 30 20 6e 20 61 72 67 73 |...)." [|0 n args|
|000008f0| 20 61 72 67 20 74 6f 6f | 6c 74 61 6c 6b 2d 61 72 | arg too|ltalk-ar|
|00000900| 67 2d 6d 6f 64 65 2d 69 | 64 73 20 6c 6f 6e 67 2d |g-mode-i|ds long-|
|00000910| 66 6f 72 6d 20 54 54 5f | 49 4e 20 6d 6f 64 65 20 |form TT_|IN mode |
|00000920| 22 22 20 76 61 6c 75 65 | 20 22 69 6e 74 22 20 22 |"" value| "int" "|
|00000930| 73 74 72 69 6e 67 22 20 | 74 79 70 65 20 69 6e 69 |string" |type ini|
|00000940| 74 66 6e 20 6d 73 67 5d | 20 37 20 28 23 24 20 2e |tfn msg]| 7 (#$ .|
|00000950| 20 31 36 33 37 29 5d 29 | 0a 23 40 33 31 38 20 49 | 1637)])|.#@318 I|
|00000960| 6e 69 74 69 61 6c 69 7a | 65 20 74 68 65 20 74 6f |nitializ|e the to|
|00000970| 6f 6c 74 61 6c 6b 20 6d | 65 73 73 61 67 65 20 61 |oltalk m|essage a|
|00000980| 74 74 72 69 62 75 74 65 | 73 2e 20 20 54 68 65 20 |ttribute|s. The |
|00000990| 76 61 6c 75 65 20 6f 66 | 20 0a 61 74 74 72 69 62 |value of| .attrib|
|000009a0| 75 74 65 73 20 6d 75 73 | 74 20 62 65 20 61 20 70 |utes mus|t be a p|
|000009b0| 72 6f 70 65 72 74 79 20 | 6c 69 73 74 20 69 6e 20 |roperty |list in |
|000009c0| 74 68 65 20 73 61 6d 65 | 20 66 6f 72 6d 20 61 73 |the same| form as|
|000009d0| 20 66 6f 72 20 0a 6d 61 | 6b 65 2d 74 6f 6f 6c 74 | for .ma|ke-toolt|
|000009e0| 61 6c 6b 2d 6d 65 73 73 | 61 67 65 2e 20 20 54 68 |alk-mess|age. Th|
|000009f0| 69 73 20 66 75 6e 63 74 | 69 6f 6e 20 63 61 6e 20 |is funct|ion can |
|00000a00| 62 65 20 75 73 65 64 20 | 74 6f 20 72 65 73 65 74 |be used |to reset|
|00000a10| 0a 61 6e 20 65 78 69 73 | 74 69 6e 67 20 6d 65 73 |.an exis|ting mes|
|00000a20| 73 61 67 65 20 6f 72 20 | 74 6f 20 69 6e 69 74 69 |sage or |to initi|
|00000a30| 61 6c 69 7a 65 20 61 20 | 6e 65 77 20 6f 6e 65 2e |alize a |new one.|
|00000a40| 20 20 53 65 65 20 0a 69 | 6e 69 74 69 61 6c 69 7a | See .i|nitializ|
|00000a50| 65 2d 74 6f 6f 6c 74 61 | 6c 6b 2d 6d 65 73 73 61 |e-toolta|lk-messa|
|00000a60| 67 65 2d 61 72 67 73 20 | 66 6f 72 20 61 20 64 65 |ge-args |for a de|
|00000a70| 73 63 72 69 70 74 69 6f | 6e 20 6f 66 20 68 6f 77 |scriptio|n of how|
|00000a80| 0a 61 72 67 75 6d 65 6e | 74 73 20 61 72 65 20 69 |.argumen|ts are i|
|00000a90| 6e 69 74 69 61 6c 69 7a | 65 64 2e 1f 0a 28 64 65 |nitializ|ed...(de|
|00000aa0| 66 61 6c 69 61 73 20 27 | 69 6e 69 74 69 61 6c 69 |falias '|initiali|
|00000ab0| 7a 65 2d 74 6f 6f 6c 74 | 61 6c 6b 2d 6d 65 73 73 |ze-toolt|alk-mess|
|00000ac0| 61 67 65 2d 61 74 74 72 | 69 62 75 74 65 73 20 23 |age-attr|ibutes #|
|00000ad0| 5b 28 6d 73 67 20 61 74 | 74 72 69 62 75 74 65 73 |[(msg at|tributes|
|00000ae0| 29 20 22 08 c1 1a 89 1b | ad a9 0b 41 ad a5 0b 40 |) ".....|...A...@|
|00000af0| 0b 41 40 1c 89 1d c3 61 | ab 89 c6 5c 6e 0e 07 0c |.A@....a|...\n...|
|00000b00| 23 88 aa 87 c8 0c 0e 07 | 0d 23 88 2a 0b 41 41 89 |#.......|.#.*.AA.|
|00000b10| 13 ac 58 c9 2a 87 22 20 | 5b 61 74 74 72 69 62 75 |..X.*." |[attribu|
|00000b20| 74 65 73 20 69 6e 69 74 | 69 61 6c 69 7a 65 2d 74 |tes init|ialize-t|
|00000b30| 6f 6f 6c 74 61 6c 6b 2d | 6d 65 73 73 61 67 65 2d |ooltalk-|message-|
|00000b40| 61 72 67 20 69 6e 69 74 | 66 6e 20 61 72 67 73 20 |arg init|fn args |
|00000b50| 76 61 6c 75 65 20 69 6e | 64 69 63 61 74 6f 72 20 |value in|dicator |
|00000b60| 69 6e 69 74 69 61 6c 69 | 7a 65 2d 74 6f 6f 6c 74 |initiali|ze-toolt|
|00000b70| 61 6c 6b 2d 6d 65 73 73 | 61 67 65 2f 70 61 74 74 |alk-mess|age/patt|
|00000b80| 65 72 6e 2d 61 72 67 73 | 20 6d 73 67 20 73 65 74 |ern-args| msg set|
|00000b90| 2d 74 6f 6f 6c 74 61 6c | 6b 2d 6d 65 73 73 61 67 |-tooltal|k-messag|
|00000ba0| 65 2d 61 74 74 72 69 62 | 75 74 65 20 6e 69 6c 5d |e-attrib|ute nil]|
|00000bb0| 20 35 20 28 23 24 20 2e | 20 32 33 39 39 29 5d 29 | 5 (#$ .| 2399)])|
|00000bc0| 0a 23 40 31 33 31 30 20 | 43 72 65 61 74 65 20 61 |.#@1310 |Create a|
|00000bd0| 20 74 6f 6f 6c 74 61 6c | 6b 20 6d 65 73 73 61 67 | tooltal|k messag|
|00000be0| 65 20 61 6e 64 20 69 6e | 69 74 69 61 6c 69 7a 65 |e and in|itialize|
|00000bf0| 20 69 74 73 20 61 74 74 | 72 69 62 75 74 65 73 2e | its att|ributes.|
|00000c00| 0a 54 68 65 20 76 61 6c | 75 65 20 6f 66 20 61 74 |.The val|ue of at|
|00000c10| 74 72 69 62 75 74 65 73 | 20 6d 75 73 74 20 62 65 |tributes| must be|
|00000c20| 20 61 20 6c 69 73 74 20 | 6f 66 20 61 6c 74 65 72 | a list |of alter|
|00000c30| 6e 61 74 69 6e 67 20 6b | 65 79 77 6f 72 64 2f 76 |nating k|eyword/v|
|00000c40| 61 6c 75 65 73 2c 20 0a | 77 68 65 72 65 20 6b 65 |alues, .|where ke|
|00000c50| 79 77 6f 72 64 73 20 61 | 72 65 20 73 79 6d 62 6f |ywords a|re symbo|
|00000c60| 6c 73 20 74 68 61 74 20 | 6e 61 6d 65 20 76 61 6c |ls that |name val|
|00000c70| 69 64 20 6d 65 73 73 61 | 67 65 20 61 74 74 72 69 |id messa|ge attri|
|00000c80| 62 75 74 65 73 2e 20 20 | 0a 46 6f 72 20 65 78 61 |butes. |.For exa|
|00000c90| 6d 70 6c 65 3a 0a 0a 20 | 20 28 6d 61 6b 65 2d 74 |mple:.. | (make-t|
|00000ca0| 6f 6f 6c 74 61 6c 6b 2d | 6d 65 73 73 61 67 65 20 |ooltalk-|message |
|00000cb0| 0a 20 20 20 20 27 28 63 | 6c 61 73 73 20 54 54 5f |. '(c|lass TT_|
|00000cc0| 4e 4f 54 49 43 45 0a 20 | 20 20 20 20 20 73 63 6f |NOTICE. | sco|
|00000cd0| 70 65 20 54 54 5f 53 45 | 53 53 49 4f 4e 0a 20 20 |pe TT_SE|SSION. |
|00000ce0| 20 20 20 20 61 64 64 72 | 65 73 73 20 54 54 5f 50 | addr|ess TT_P|
|00000cf0| 52 4f 43 45 44 55 52 45 | 0a 20 20 20 20 20 20 6f |ROCEDURE|. o|
|00000d00| 70 20 22 64 6f 2d 73 6f | 6d 65 74 68 69 6e 67 22 |p "do-so|mething"|
|00000d10| 0a 20 20 20 20 20 20 61 | 72 67 73 20 28 22 61 72 |. a|rgs ("ar|
|00000d20| 67 31 22 20 31 32 33 34 | 35 20 28 54 54 5f 49 4e |g1" 1234|5 (TT_IN|
|00000d30| 4f 55 54 20 22 61 72 67 | 33 22 20 22 73 74 72 69 |OUT "arg|3" "stri|
|00000d40| 6e 67 22 29 29 29 29 0a | 0a 56 61 6c 75 65 73 20 |ng")))).|.Values |
|00000d50| 6d 75 73 74 20 61 6c 77 | 61 79 73 20 62 65 20 73 |must alw|ays be s|
|00000d60| 74 72 69 6e 67 73 2c 20 | 69 6e 74 65 67 65 72 73 |trings, |integers|
|00000d70| 2c 20 6f 72 20 73 79 6d | 62 6f 6c 73 20 74 68 61 |, or sym|bols tha|
|00000d80| 74 0a 72 65 70 72 65 73 | 65 6e 74 20 54 6f 6f 6c |t.repres|ent Tool|
|00000d90| 74 61 6c 6b 20 63 6f 6e | 73 74 61 6e 74 73 2e 20 |talk con|stants. |
|00000da0| 20 41 74 74 72 69 62 75 | 74 65 20 6e 61 6d 65 73 | Attribu|te names|
|00000db0| 20 61 72 65 20 74 68 65 | 20 73 61 6d 65 20 61 73 | are the| same as|
|00000dc0| 20 0a 74 68 6f 73 65 20 | 73 75 70 70 6f 72 74 65 | .those |supporte|
|00000dd0| 64 20 62 79 20 73 65 74 | 2d 74 6f 6f 6c 74 61 6c |d by set|-tooltal|
|00000de0| 6b 2d 6d 65 73 73 61 67 | 65 2d 61 74 74 72 69 62 |k-messag|e-attrib|
|00000df0| 75 74 65 2c 20 70 6c 75 | 73 20 27 61 72 67 73 2e |ute, plu|s 'args.|
|00000e00| 0a 0a 54 68 65 20 76 61 | 6c 75 65 20 6f 66 20 61 |..The va|lue of a|
|00000e10| 72 67 73 20 73 68 6f 75 | 6c 64 20 62 65 20 61 20 |rgs shou|ld be a |
|00000e20| 6c 69 73 74 20 6f 66 20 | 6d 65 73 73 61 67 65 20 |list of |message |
|00000e30| 61 72 67 75 6d 65 6e 74 | 73 20 77 68 65 72 65 0a |argument|s where.|
|00000e40| 65 61 63 68 20 6d 65 73 | 73 61 67 65 20 61 72 67 |each mes|sage arg|
|00000e50| 75 6d 65 6e 74 20 68 61 | 73 20 74 68 65 20 66 6f |ument ha|s the fo|
|00000e60| 6c 6c 6f 77 69 6e 67 20 | 66 6f 72 6d 3a 0a 0a 20 |llowing |form:.. |
|00000e70| 20 20 28 6d 6f 64 65 20 | 5b 76 61 6c 75 65 20 5b | (mode |[value [|
|00000e80| 74 79 70 65 5d 5d 29 20 | 6f 72 20 6a 75 73 74 20 |type]]) |or just |
|00000e90| 76 61 6c 75 65 0a 0a 57 | 68 65 72 65 20 6d 6f 64 |value..W|here mod|
|00000ea0| 65 20 69 73 20 6f 6e 65 | 20 6f 66 20 54 54 5f 49 |e is one| of TT_I|
|00000eb0| 4e 2c 20 54 54 5f 4f 55 | 54 2c 20 54 54 5f 49 4e |N, TT_OU|T, TT_IN|
|00000ec0| 4f 55 54 20 61 6e 64 20 | 74 79 70 65 20 69 73 20 |OUT and |type is |
|00000ed0| 61 20 73 74 72 69 6e 67 | 2e 20 20 0a 49 66 20 74 |a string|. .If t|
|00000ee0| 79 70 65 20 69 73 6e 27 | 74 20 73 70 65 63 69 66 |ype isn'|t specif|
|00000ef0| 69 65 64 20 74 68 65 6e | 20 22 69 6e 74 22 20 69 |ied then| "int" i|
|00000f00| 73 20 75 73 65 64 20 69 | 66 20 74 68 65 20 76 61 |s used i|f the va|
|00000f10| 6c 75 65 20 69 73 20 61 | 20 0a 6e 75 6d 62 65 72 |lue is a| .number|
|00000f20| 20 6f 74 68 65 72 77 69 | 73 65 20 22 73 74 72 69 | otherwi|se "stri|
|00000f30| 6e 67 22 20 69 73 20 75 | 73 65 64 2e 20 20 49 66 |ng" is u|sed. If|
|00000f40| 20 6f 6e 6c 79 20 61 20 | 76 61 6c 75 65 20 69 73 | only a |value is|
|00000f50| 20 73 70 65 63 69 66 69 | 65 64 20 0a 74 68 65 6e | specifi|ed .then|
|00000f60| 20 6d 6f 64 65 20 64 65 | 66 61 75 6c 74 73 20 74 | mode de|faults t|
|00000f70| 6f 20 54 54 5f 49 4e 2e | 20 20 49 66 20 6d 6f 64 |o TT_IN.| If mod|
|00000f80| 65 20 69 73 20 54 54 5f | 4f 55 54 20 74 68 65 6e |e is TT_|OUT then|
|00000f90| 20 76 61 6c 75 65 20 61 | 6e 64 20 0a 74 79 70 65 | value a|nd .type|
|00000fa0| 20 64 6f 6e 27 74 20 6e | 65 65 64 20 74 6f 20 62 | don't n|eed to b|
|00000fb0| 65 20 73 70 65 63 69 66 | 69 65 64 2e 20 20 59 6f |e specif|ied. Yo|
|00000fc0| 75 20 63 61 6e 20 66 69 | 6e 64 20 6f 75 74 20 6d |u can fi|nd out m|
|00000fd0| 6f 72 65 20 61 62 6f 75 | 74 20 74 68 65 20 0a 73 |ore abou|t the .s|
|00000fe0| 65 6d 61 6e 74 69 63 73 | 20 61 6e 64 20 75 73 65 |emantics| and use|
|00000ff0| 73 20 6f 66 20 54 6f 6f | 6c 54 61 6c 6b 20 6d 65 |s of Too|lTalk me|
|00001000| 73 73 61 67 65 20 61 72 | 67 75 6d 65 6e 74 73 20 |ssage ar|guments |
|00001010| 69 6e 20 63 68 61 70 74 | 65 72 20 34 20 6f 66 20 |in chapt|er 4 of |
|00001020| 74 68 65 20 0a 54 6f 6f | 6c 74 61 6c 6b 20 50 72 |the .Too|ltalk Pr|
|00001030| 6f 67 72 61 6d 6d 65 72 | 27 73 20 47 75 69 64 65 |ogrammer|'s Guide|
|00001040| 2e 0a 0a 54 68 65 20 6e | 6f 2d 63 61 6c 6c 62 61 |...The n|o-callba|
|00001050| 63 6b 20 61 72 67 20 69 | 73 20 61 20 68 61 63 6b |ck arg i|s a hack|
|00001060| 20 74 6f 20 70 72 65 76 | 65 6e 74 20 74 68 65 20 | to prev|ent the |
|00001070| 72 65 67 69 73 74 72 61 | 74 69 6f 6e 20 6f 66 20 |registra|tion of |
|00001080| 74 68 65 0a 43 2d 6c 65 | 76 65 6c 20 63 61 6c 6c |the.C-le|vel call|
|00001090| 62 61 63 6b 2e 20 20 54 | 68 69 73 20 68 61 63 6b |back. T|his hack|
|000010a0| 20 69 73 20 6e 65 65 64 | 65 64 20 62 79 20 74 68 | is need|ed by th|
|000010b0| 65 20 63 75 72 72 65 6e | 74 20 53 50 41 52 43 77 |e curren|t SPARCw|
|000010c0| 6f 72 6b 73 0a 74 6f 6f | 6c 20 73 74 61 72 74 75 |orks.too|l startu|
|000010d0| 70 20 6d 65 63 68 61 6e | 69 73 6d 2e 20 20 59 75 |p mechan|ism. Yu|
|000010e0| 63 6b 6f 2e 1f 0a 28 64 | 65 66 61 6c 69 61 73 20 |cko...(d|efalias |
|000010f0| 27 6d 61 6b 65 2d 74 6f | 6f 6c 74 61 6c 6b 2d 6d |'make-to|oltalk-m|
|00001100| 65 73 73 61 67 65 20 23 | 5b 28 61 74 74 72 69 62 |essage #|[(attrib|
|00001110| 75 74 65 73 20 26 6f 70 | 74 69 6f 6e 61 6c 20 6e |utes &op|tional n|
|00001120| 6f 2d 63 61 6c 6c 62 61 | 63 6b 29 20 22 c0 09 21 |o-callba|ck) "..!|
|00001130| 1a c3 5c 6e 0c 5c 22 88 | 5c 6e 29 87 22 20 5b 63 |..\n.\".|\n)." [c|
|00001140| 72 65 61 74 65 2d 74 6f | 6f 6c 74 61 6c 6b 2d 6d |reate-to|oltalk-m|
|00001150| 65 73 73 61 67 65 20 6e | 6f 2d 63 61 6c 6c 62 61 |essage n|o-callba|
|00001160| 63 6b 20 6d 73 67 20 69 | 6e 69 74 69 61 6c 69 7a |ck msg i|nitializ|
|00001170| 65 2d 74 6f 6f 6c 74 61 | 6c 6b 2d 6d 65 73 73 61 |e-toolta|lk-messa|
|00001180| 67 65 2d 61 74 74 72 69 | 62 75 74 65 73 20 61 74 |ge-attri|butes at|
|00001190| 74 72 69 62 75 74 65 73 | 5d 20 33 20 28 23 24 20 |tributes|] 3 (#$ |
|000011a0| 2e 20 33 30 31 36 29 5d | 29 0a 23 40 31 30 32 20 |. 3016)]|).#@102 |
|000011b0| 50 72 69 6e 74 20 74 6f | 6f 6c 74 61 6c 6b 20 6d |Print to|oltalk m|
|000011c0| 65 73 73 61 67 65 20 4d | 53 47 27 73 20 61 74 74 |essage M|SG's att|
|000011d0| 72 69 62 75 74 65 73 20 | 61 6e 64 20 61 72 67 75 |ributes |and argu|
|000011e0| 6d 65 6e 74 73 20 74 6f | 20 53 54 52 45 41 4d 2e |ments to| STREAM.|
|000011f0| 0a 54 68 69 73 20 69 73 | 20 6f 66 74 65 6e 20 75 |.This is| often u|
|00001200| 73 65 66 75 6c 20 66 6f | 72 20 64 65 62 75 67 67 |seful fo|r debugg|
|00001210| 69 6e 67 2e 1f 0a 28 64 | 65 66 61 6c 69 61 73 20 |ing...(d|efalias |
|00001220| 27 64 65 73 63 72 69 62 | 65 2d 74 6f 6f 6c 74 61 |'describ|e-toolta|
|00001230| 6c 6b 2d 6d 65 73 73 61 | 67 65 20 23 5b 28 6d 73 |lk-messa|ge #[(ms|
|00001240| 67 20 26 6f 70 74 69 6f | 6e 61 6c 20 73 74 72 65 |g &optio|nal stre|
|00001250| 61 6d 29 20 22 c0 19 c2 | 0b 21 88 09 ab 9f c4 09 |am) "...|.!......|
|00001260| 40 0b 5c 22 88 c4 c5 0b | 5c 22 88 c6 c7 0e 08 09 |@.\"....|\"......|
|00001270| 40 5c 22 0b 5c 22 88 c2 | 0b 21 88 09 41 89 11 ac |@\".\"..|.!..A...|
|00001280| 61 29 c7 0e 08 c9 5c 22 | ca 1e 0b 1e 0c 0e 0b 0e |a)....\"|........|
|00001290| 0c 57 ad cc c4 cd 0b 5c | 22 88 c4 0e 0b 0b 5c 22 |.W.....\|".....\"|
|000012a0| 88 c4 c5 0b 5c 22 88 c7 | 0e 08 ce 0e 0b 23 1e 0f |....\"..|.....#..|
|000012b0| c4 d0 c7 0e 08 d1 0e 0b | 23 0e 0f d2 6b ab 89 c7 |........|#...k...|
|000012c0| 0e 08 d3 0e 0b 23 aa 87 | c7 0e 08 d4 0e 0b 23 0e |.....#..|......#.|
|000012d0| 0f 45 21 0b 5c 22 88 29 | c2 0b 21 88 0e 0b 54 89 |.E!.\".)|..!...T.|
|000012e0| 16 0b aa 2f 2a 87 22 20 | 5b 28 61 64 64 72 65 73 |.../*." |[(addres|
|000012f0| 73 20 63 6c 61 73 73 20 | 64 69 73 70 6f 73 69 74 |s class |disposit|
|00001300| 69 6f 6e 20 66 69 6c 65 | 20 67 69 64 20 68 61 6e |ion file| gid han|
|00001310| 64 6c 65 72 20 68 61 6e | 64 6c 65 72 5f 70 74 79 |dler han|dler_pty|
|00001320| 70 65 20 6f 62 6a 65 63 | 74 20 6f 70 20 6f 70 6e |pe objec|t op opn|
|00001330| 75 6d 20 6f 74 79 70 65 | 20 73 63 6f 70 65 20 73 |um otype| scope s|
|00001340| 65 6e 64 65 72 20 73 65 | 6e 64 65 72 5f 70 74 79 |ender se|nder_pty|
|00001350| 70 65 20 73 65 73 73 69 | 6f 6e 20 73 74 61 74 65 |pe sessi|on state|
|00001360| 20 73 74 61 74 75 73 20 | 73 74 61 74 75 73 5f 73 | status |status_s|
|00001370| 74 72 69 6e 67 20 75 69 | 64 20 63 61 6c 6c 62 61 |tring ui|d callba|
|00001380| 63 6b 29 20 61 74 74 72 | 73 20 74 65 72 70 72 69 |ck) attr|s terpri|
|00001390| 20 73 74 72 65 61 6d 20 | 70 72 69 6e 63 20 22 20 | stream |princ " |
|000013a0| 20 22 20 70 72 69 6e 31 | 20 67 65 74 2d 74 6f 6f | " prin1| get-too|
|000013b0| 6c 74 61 6c 6b 2d 6d 65 | 73 73 61 67 65 2d 61 74 |ltalk-me|ssage-at|
|000013c0| 74 72 69 62 75 74 65 20 | 6d 73 67 20 61 72 67 73 |tribute |msg args|
|000013d0| 5f 63 6f 75 6e 74 20 30 | 20 69 20 6e 20 22 41 72 |_count 0| i n "Ar|
|000013e0| 67 75 6d 65 6e 74 20 22 | 20 61 72 67 5f 74 79 70 |gument "| arg_typ|
|000013f0| 65 20 74 79 70 65 20 70 | 72 69 6e 31 2d 74 6f 2d |e type p|rin1-to-|
|00001400| 73 74 72 69 6e 67 20 61 | 72 67 5f 6d 6f 64 65 20 |string a|rg_mode |
|00001410| 22 69 6e 74 22 20 61 72 | 67 5f 69 76 61 6c 20 61 |"int" ar|g_ival a|
|00001420| 72 67 5f 76 61 6c 5d 20 | 38 20 28 23 24 20 2e 20 |rg_val] |8 (#$ . |
|00001430| 34 35 32 38 29 5d 29 0a | 23 40 31 33 39 20 41 64 |4528)]).|#@139 Ad|
|00001440| 64 20 6f 6e 65 20 61 72 | 67 75 6d 65 6e 74 20 74 |d one ar|gument t|
|00001450| 6f 20 74 6f 6f 6c 74 61 | 6c 6b 20 70 61 74 74 65 |o toolta|lk patte|
|00001460| 72 6e 20 50 41 54 2e 0a | 4e 6f 20 73 75 70 70 6f |rn PAT..|No suppo|
|00001470| 72 74 20 66 6f 72 20 73 | 70 65 63 69 66 79 69 6e |rt for s|pecifyin|
|00001480| 67 20 70 61 74 74 65 72 | 6e 20 61 72 67 75 6d 65 |g patter|n argume|
|00001490| 6e 74 73 20 77 68 6f 73 | 65 20 76 61 6c 75 65 20 |nts whos|e value |
|000014a0| 69 73 20 61 20 76 65 63 | 74 6f 72 0a 6f 66 20 62 |is a vec|tor.of b|
|000014b0| 69 6e 61 72 79 20 64 61 | 74 61 20 69 73 20 70 72 |inary da|ta is pr|
|000014c0| 6f 76 69 64 65 64 2e 1f | 0a 28 64 65 66 61 6c 69 |ovided..|.(defali|
|000014d0| 61 73 20 27 69 6e 69 74 | 69 61 6c 69 7a 65 2d 74 |as 'init|ialize-t|
|000014e0| 6f 6f 6c 74 61 6c 6b 2d | 70 61 74 74 65 72 6e 2d |ooltalk-|pattern-|
|000014f0| 61 72 67 20 23 5b 28 70 | 61 74 20 6e 20 6d 6f 64 |arg #[(p|at n mod|
|00001500| 65 20 76 61 6c 75 65 20 | 76 74 79 70 65 29 20 22 |e value |vtype) "|
|00001510| 08 a8 ac 84 08 3b ab 83 | 08 aa 83 c1 08 21 1a c3 |.....;..|.....!..|
|00001520| 0c 0d 0e 06 5c 6e 24 29 | 87 22 20 5b 76 61 6c 75 |....\n$)|." [valu|
|00001530| 65 20 70 72 69 6e 31 2d | 74 6f 2d 73 74 72 69 6e |e prin1-|to-strin|
|00001540| 67 20 63 6f 6e 76 65 72 | 74 65 64 2d 76 61 6c 75 |g conver|ted-valu|
|00001550| 65 20 61 64 64 2d 74 6f | 6f 6c 74 61 6c 6b 2d 70 |e add-to|oltalk-p|
|00001560| 61 74 74 65 72 6e 2d 61 | 72 67 20 70 61 74 20 6d |attern-a|rg pat m|
|00001570| 6f 64 65 20 76 74 79 70 | 65 5d 20 35 20 28 23 24 |ode vtyp|e] 5 (#$|
|00001580| 20 2e 20 35 31 38 32 29 | 5d 29 0a 23 40 35 36 39 | . 5182)|]).#@569|
|00001590| 20 49 6e 69 74 69 61 6c | 69 7a 65 20 74 6f 6f 6c | Initial|ize tool|
|000015a0| 74 61 6c 6b 20 70 61 74 | 74 65 72 6e 20 50 41 54 |talk pat|tern PAT|
|000015b0| 27 73 20 61 74 74 72 69 | 62 75 74 65 73 2e 0a 41 |'s attri|butes..A|
|000015c0| 54 54 52 49 42 55 54 45 | 53 20 6d 75 73 74 20 62 |TTRIBUTE|S must b|
|000015d0| 65 20 61 20 70 72 6f 70 | 65 72 74 79 20 6c 69 73 |e a prop|erty lis|
|000015e0| 74 20 69 6e 20 74 68 65 | 20 73 61 6d 65 20 66 6f |t in the| same fo|
|000015f0| 72 6d 20 61 73 20 66 6f | 72 0a 60 6d 61 6b 65 2d |rm as fo|r.`make-|
|00001600| 74 6f 6f 6c 74 61 6c 6b | 2d 70 61 74 74 65 72 6e |tooltalk|-pattern|
|00001610| 27 2e 20 20 54 68 65 20 | 76 61 6c 75 65 20 6f 66 |'. The |value of|
|00001620| 20 65 61 63 68 20 61 74 | 74 72 69 62 75 74 65 20 | each at|tribute |
|00001630| 28 65 78 63 65 70 74 20 | 27 63 61 74 65 67 6f 72 |(except |'categor|
|00001640| 79 29 0a 63 61 6e 20 65 | 69 74 68 65 72 20 62 65 |y).can e|ither be|
|00001650| 20 61 20 73 69 6e 67 6c | 65 20 76 61 6c 75 65 20 | a singl|e value |
|00001660| 6f 72 20 61 20 6c 69 73 | 74 20 6f 66 20 76 61 6c |or a lis|t of val|
|00001670| 75 65 73 2e 20 20 49 66 | 20 61 20 6c 69 73 74 20 |ues. If| a list |
|00001680| 6f 66 0a 76 61 6c 75 65 | 73 20 69 73 20 70 72 6f |of.value|s is pro|
|00001690| 76 69 64 65 64 20 74 68 | 65 6e 20 74 68 65 20 70 |vided th|en the p|
|000016a0| 61 74 74 65 72 6e 20 77 | 69 6c 6c 20 6d 61 74 63 |attern w|ill matc|
|000016b0| 68 20 6d 65 73 73 61 67 | 65 73 20 77 69 74 68 0a |h messag|es with.|
|000016c0| 61 20 63 6f 72 72 65 73 | 70 6f 6e 64 69 6e 67 20 |a corres|ponding |
|000016d0| 61 74 74 72 69 62 75 74 | 65 20 74 68 61 74 20 6d |attribut|e that m|
|000016e0| 61 74 63 68 65 73 20 61 | 6e 79 20 6d 65 6d 62 65 |atches a|ny membe|
|000016f0| 72 20 6f 66 20 74 68 65 | 20 6c 69 73 74 2e 0a 0a |r of the| list...|
|00001700| 54 68 69 73 20 66 75 6e | 63 74 69 6f 6e 20 63 61 |This fun|ction ca|
|00001710| 6e 20 62 65 20 75 73 65 | 64 20 74 6f 20 61 64 64 |n be use|d to add|
|00001720| 20 61 74 74 72 69 62 75 | 74 65 20 76 61 6c 75 65 | attribu|te value|
|00001730| 73 20 74 6f 20 61 6e 20 | 65 78 69 73 74 69 6e 67 |s to an |existing|
|00001740| 0a 70 61 74 74 65 72 6e | 20 6f 72 20 74 6f 20 69 |.pattern| or to i|
|00001750| 6e 69 74 69 61 6c 69 7a | 65 20 61 20 6e 65 77 20 |nitializ|e a new |
|00001760| 6f 6e 65 2e 20 20 53 65 | 65 0a 60 69 6e 69 74 69 |one. Se|e.`initi|
|00001770| 61 6c 69 7a 65 2d 74 6f | 6f 6c 74 61 6c 6b 2d 6d |alize-to|oltalk-m|
|00001780| 65 73 73 61 67 65 2f 70 | 61 74 74 65 72 6e 2d 61 |essage/p|attern-a|
|00001790| 72 67 73 27 20 66 6f 72 | 20 61 20 64 65 73 63 72 |rgs' for| a descr|
|000017a0| 69 70 74 69 6f 6e 20 6f | 66 20 68 6f 77 0a 61 72 |iption o|f how.ar|
|000017b0| 67 75 6d 65 6e 74 73 20 | 61 72 65 20 69 6e 69 74 |guments |are init|
|000017c0| 69 61 6c 69 7a 65 64 2e | 1f 0a 28 64 65 66 61 6c |ialized.|..(defal|
|000017d0| 69 61 73 20 27 69 6e 69 | 74 69 61 6c 69 7a 65 2d |ias 'ini|tialize-|
|000017e0| 74 6f 6f 6c 74 61 6c 6b | 2d 70 61 74 74 65 72 6e |tooltalk|-pattern|
|000017f0| 2d 61 74 74 72 69 62 75 | 74 65 73 20 23 5b 28 70 |-attribu|tes #[(p|
|00001800| 61 74 20 61 74 74 72 69 | 62 75 74 65 73 29 20 22 |at attri|butes) "|
|00001810| 08 c1 1a 89 1b ad f3 0b | 41 ad ef 0b 40 0b 41 40 |........|A...@.A@|
|00001820| 1c 89 1d c3 61 ab 89 c6 | 5c 6e 0e 07 0c 23 88 aa |....a...|\n...#..|
|00001830| d1 0d c8 61 ab a7 0c 89 | 1e 09 ab 9e 0e 09 40 0e |...a....|......@.|
|00001840| 09 41 40 1e 5c 6e 1e 0b | cc 0e 07 0e 0b 0e 5c 6e |.A@.\n..|......\n|
|00001850| 23 88 2a 0e 09 41 41 89 | 16 09 ac 62 29 aa a5 0c |#.*..AA.|...b)...|
|00001860| 3a ab 9a 0c 89 1e 09 ab | 91 cd 0e 09 40 0e 07 0d |:.......|....@...|
|00001870| 23 88 0e 09 41 89 16 09 | ac 6f 29 aa 87 cd 0c 0e |#...A...|.o).....|
|00001880| 07 0d 23 88 2a 0b 41 41 | 89 13 ac 0e ce 2a 87 22 |..#.*.AA|.....*."|
|00001890| 20 5b 61 74 74 72 69 62 | 75 74 65 73 20 69 6e 69 | [attrib|utes ini|
|000018a0| 74 69 61 6c 69 7a 65 2d | 74 6f 6f 6c 74 61 6c 6b |tialize-|tooltalk|
|000018b0| 2d 70 61 74 74 65 72 6e | 2d 61 72 67 20 69 6e 69 |-pattern|-arg ini|
|000018c0| 74 66 6e 20 61 72 67 73 | 20 76 61 6c 75 65 20 69 |tfn args| value i|
|000018d0| 6e 64 69 63 61 74 6f 72 | 20 69 6e 69 74 69 61 6c |ndicator| initial|
|000018e0| 69 7a 65 2d 74 6f 6f 6c | 74 61 6c 6b 2d 6d 65 73 |ize-tool|talk-mes|
|000018f0| 73 61 67 65 2f 70 61 74 | 74 65 72 6e 2d 61 72 67 |sage/pat|tern-arg|
|00001900| 73 20 70 61 74 20 70 6c | 69 73 74 20 76 61 6c 75 |s pat pl|ist valu|
|00001910| 65 73 20 70 72 6f 70 76 | 61 6c 20 70 72 6f 70 20 |es propv|al prop |
|00001920| 74 6f 6f 6c 74 61 6c 6b | 2d 70 61 74 74 65 72 6e |tooltalk|-pattern|
|00001930| 2d 70 72 6f 70 2d 73 65 | 74 20 61 64 64 2d 74 6f |-prop-se|t add-to|
|00001940| 6f 6c 74 61 6c 6b 2d 70 | 61 74 74 65 72 6e 2d 61 |oltalk-p|attern-a|
|00001950| 74 74 72 69 62 75 74 65 | 20 6e 69 6c 5d 20 35 20 |ttribute| nil] 5 |
|00001960| 28 23 24 20 2e 20 35 35 | 32 31 29 5d 29 0a 23 40 |(#$ . 55|21)]).#@|
|00001970| 31 32 38 34 20 43 72 65 | 61 74 65 20 61 20 74 6f |1284 Cre|ate a to|
|00001980| 6f 6c 74 61 6c 6b 20 70 | 61 74 74 65 72 6e 20 61 |oltalk p|attern a|
|00001990| 6e 64 20 69 6e 69 74 69 | 61 6c 69 7a 65 20 69 74 |nd initi|alize it|
|000019a0| 73 20 61 74 74 72 69 62 | 75 74 65 73 2e 0a 54 68 |s attrib|utes..Th|
|000019b0| 65 20 76 61 6c 75 65 20 | 6f 66 20 61 74 74 72 69 |e value |of attri|
|000019c0| 62 75 74 65 73 20 6d 75 | 73 74 20 62 65 20 61 20 |butes mu|st be a |
|000019d0| 6c 69 73 74 20 6f 66 20 | 61 6c 74 65 72 6e 61 74 |list of |alternat|
|000019e0| 69 6e 67 20 6b 65 79 77 | 6f 72 64 2f 76 61 6c 75 |ing keyw|ord/valu|
|000019f0| 65 73 2c 20 0a 77 68 65 | 72 65 20 6b 65 79 77 6f |es, .whe|re keywo|
|00001a00| 72 64 73 20 61 72 65 20 | 73 79 6d 62 6f 6c 73 20 |rds are |symbols |
|00001a10| 74 68 61 74 20 6e 61 6d | 65 20 76 61 6c 69 64 20 |that nam|e valid |
|00001a20| 70 61 74 74 65 72 6e 20 | 61 74 74 72 69 62 75 74 |pattern |attribut|
|00001a30| 65 73 0a 6f 72 20 6c 69 | 73 74 73 20 6f 66 20 76 |es.or li|sts of v|
|00001a40| 61 6c 69 64 20 61 74 74 | 72 69 62 75 74 65 73 2e |alid att|ributes.|
|00001a50| 20 20 46 6f 72 20 65 78 | 61 6d 70 6c 65 3a 0a 0a | For ex|ample:..|
|00001a60| 20 20 28 6d 61 6b 65 2d | 74 6f 6f 6c 74 61 6c 6b | (make-|tooltalk|
|00001a70| 2d 70 61 74 74 65 72 6e | 20 0a 20 20 20 20 27 28 |-pattern| . '(|
|00001a80| 63 61 74 65 67 6f 72 79 | 20 54 54 5f 4f 42 53 45 |category| TT_OBSE|
|00001a90| 52 56 45 0a 20 20 20 20 | 20 20 73 63 6f 70 65 20 |RVE. | scope |
|00001aa0| 54 54 5f 53 45 53 53 49 | 4f 4e 0a 20 20 20 20 20 |TT_SESSI|ON. |
|00001ab0| 20 6f 70 20 28 22 6f 70 | 65 72 61 74 69 6f 6e 31 | op ("op|eration1|
|00001ac0| 22 20 22 6f 70 65 72 61 | 74 69 6f 6e 32 22 29 0a |" "opera|tion2").|
|00001ad0| 20 20 20 20 20 20 61 72 | 67 73 20 28 22 61 72 67 | ar|gs ("arg|
|00001ae0| 31 22 20 31 32 33 34 35 | 20 28 54 54 5f 49 4e 4f |1" 12345| (TT_INO|
|00001af0| 55 54 20 22 61 72 67 33 | 22 20 22 73 74 72 69 6e |UT "arg3|" "strin|
|00001b00| 67 22 29 29 29 29 0a 0a | 0a 56 61 6c 75 65 73 20 |g"))))..|.Values |
|00001b10| 6d 75 73 74 20 61 6c 77 | 61 79 73 20 62 65 20 73 |must alw|ays be s|
|00001b20| 74 72 69 6e 67 73 2c 20 | 69 6e 74 65 67 65 72 73 |trings, |integers|
|00001b30| 2c 20 6f 72 20 73 79 6d | 62 6f 6c 73 20 74 68 61 |, or sym|bols tha|
|00001b40| 74 0a 72 65 70 72 65 73 | 65 6e 74 20 54 6f 6f 6c |t.repres|ent Tool|
|00001b50| 74 61 6c 6b 20 63 6f 6e | 73 74 61 6e 74 73 20 6f |talk con|stants o|
|00001b60| 72 20 6c 69 73 74 73 20 | 6f 66 20 73 61 6d 65 2e |r lists |of same.|
|00001b70| 20 20 57 68 65 6e 20 61 | 20 6c 69 73 74 20 0a 6f | When a| list .o|
|00001b80| 66 20 76 61 6c 75 65 73 | 20 69 73 20 70 72 6f 76 |f values| is prov|
|00001b90| 69 64 65 64 20 61 6c 6c | 20 6f 66 20 74 68 65 20 |ided all| of the |
|00001ba0| 6c 69 73 74 20 65 6c 65 | 6d 65 6e 74 73 20 61 72 |list ele|ments ar|
|00001bb0| 65 20 61 64 64 65 64 20 | 74 6f 20 0a 74 68 65 20 |e added |to .the |
|00001bc0| 61 74 74 72 69 62 75 74 | 65 2e 20 20 49 6e 20 74 |attribut|e. In t|
|00001bd0| 68 65 20 65 78 61 6d 70 | 6c 65 20 61 62 6f 76 65 |he examp|le above|
|00001be0| 2c 20 6d 65 73 73 61 67 | 65 73 20 77 68 6f 73 65 |, messag|es whose|
|00001bf0| 20 6f 70 0a 61 74 74 72 | 69 62 75 74 65 20 69 73 | op.attr|ibute is|
|00001c00| 20 22 6f 70 65 72 61 74 | 69 6f 6e 31 22 20 6f 72 | "operat|ion1" or|
|00001c10| 20 22 6f 70 65 72 61 74 | 69 6f 6e 32 22 20 77 6f | "operat|ion2" wo|
|00001c20| 75 6c 64 20 6d 61 74 63 | 68 20 74 68 65 20 70 61 |uld matc|h the pa|
|00001c30| 74 74 65 72 6e 2e 0a 0a | 54 68 65 20 76 61 6c 75 |ttern...|The valu|
|00001c40| 65 20 6f 66 20 61 72 67 | 73 20 73 68 6f 75 6c 64 |e of arg|s should|
|00001c50| 20 62 65 20 61 20 6c 69 | 73 74 20 6f 66 20 70 61 | be a li|st of pa|
|00001c60| 74 74 65 72 6e 20 61 72 | 67 75 6d 65 6e 74 73 20 |ttern ar|guments |
|00001c70| 77 68 65 72 65 20 0a 65 | 61 63 68 20 70 61 74 74 |where .e|ach patt|
|00001c80| 65 72 6e 20 61 72 67 75 | 6d 65 6e 74 20 68 61 73 |ern argu|ment has|
|00001c90| 20 74 68 65 20 66 6f 6c | 6c 6f 77 69 6e 67 20 66 | the fol|lowing f|
|00001ca0| 6f 72 6d 3a 0a 0a 20 20 | 20 28 6d 6f 64 65 20 5b |orm:.. | (mode [|
|00001cb0| 76 61 6c 75 65 20 5b 74 | 79 70 65 5d 5d 29 20 6f |value [t|ype]]) o|
|00001cc0| 72 20 6a 75 73 74 20 76 | 61 6c 75 65 0a 0a 57 68 |r just v|alue..Wh|
|00001cd0| 65 72 65 20 6d 6f 64 65 | 20 69 73 20 6f 6e 65 20 |ere mode| is one |
|00001ce0| 6f 66 20 54 54 5f 49 4e | 2c 20 54 54 5f 4f 55 54 |of TT_IN|, TT_OUT|
|00001cf0| 2c 20 54 54 5f 49 4e 4f | 55 54 20 61 6e 64 20 74 |, TT_INO|UT and t|
|00001d00| 79 70 65 20 69 73 20 61 | 20 73 74 72 69 6e 67 2e |ype is a| string.|
|00001d10| 20 20 0a 49 66 20 74 79 | 70 65 20 69 73 6e 27 74 | .If ty|pe isn't|
|00001d20| 20 73 70 65 63 69 66 69 | 65 64 20 74 68 65 6e 20 | specifi|ed then |
|00001d30| 22 69 6e 74 22 20 69 73 | 20 75 73 65 64 20 69 66 |"int" is| used if|
|00001d40| 20 74 68 65 20 76 61 6c | 75 65 20 69 73 20 61 20 | the val|ue is a |
|00001d50| 0a 6e 75 6d 62 65 72 20 | 6f 74 68 65 72 77 69 73 |.number |otherwis|
|00001d60| 65 20 22 73 74 72 69 6e | 67 22 20 69 73 20 75 73 |e "strin|g" is us|
|00001d70| 65 64 2e 20 20 49 66 20 | 6f 6e 6c 79 20 61 20 76 |ed. If |only a v|
|00001d80| 61 6c 75 65 20 69 73 20 | 73 70 65 63 69 66 69 65 |alue is |specifie|
|00001d90| 64 20 0a 74 68 65 6e 20 | 6d 6f 64 65 20 64 65 66 |d .then |mode def|
|00001da0| 61 75 6c 74 73 20 74 6f | 20 54 54 5f 49 4e 2e 20 |aults to| TT_IN. |
|00001db0| 20 49 66 20 6d 6f 64 65 | 20 69 73 20 54 54 5f 4f | If mode| is TT_O|
|00001dc0| 55 54 20 74 68 65 6e 20 | 76 61 6c 75 65 20 61 6e |UT then |value an|
|00001dd0| 64 20 74 79 70 65 20 0a | 64 6f 6e 27 74 20 6e 65 |d type .|don't ne|
|00001de0| 65 64 20 74 6f 20 62 65 | 20 73 70 65 63 69 66 69 |ed to be| specifi|
|00001df0| 65 64 2e 20 20 59 6f 75 | 20 63 61 6e 20 66 69 6e |ed. You| can fin|
|00001e00| 64 20 6f 75 74 20 6d 6f | 72 65 20 61 62 6f 75 74 |d out mo|re about|
|00001e10| 20 74 68 65 20 73 65 6d | 61 6e 74 69 63 73 20 0a | the sem|antics .|
|00001e20| 61 6e 64 20 75 73 65 73 | 20 6f 66 20 54 6f 6f 6c |and uses| of Tool|
|00001e30| 54 61 6c 6b 20 70 61 74 | 74 65 72 6e 20 61 72 67 |Talk pat|tern arg|
|00001e40| 75 6d 65 6e 74 73 20 69 | 6e 20 63 68 61 70 74 65 |uments i|n chapte|
|00001e50| 72 20 33 20 6f 66 20 74 | 68 65 20 54 6f 6f 6c 74 |r 3 of t|he Toolt|
|00001e60| 61 6c 6b 0a 50 72 6f 67 | 72 61 6d 6d 65 72 73 20 |alk.Prog|rammers |
|00001e70| 47 75 69 64 65 2e 0a 1f | 0a 28 64 65 66 61 6c 69 |Guide...|.(defali|
|00001e80| 61 73 20 27 6d 61 6b 65 | 2d 74 6f 6f 6c 74 61 6c |as 'make|-tooltal|
|00001e90| 6b 2d 70 61 74 74 65 72 | 6e 20 23 5b 28 61 74 74 |k-patter|n #[(att|
|00001ea0| 72 69 62 75 74 65 73 29 | 20 22 c0 20 19 c2 09 0b |ributes)| ". ....|
|00001eb0| 5c 22 88 09 29 87 22 20 | 5b 63 72 65 61 74 65 2d |\"..)." |[create-|
|00001ec0| 74 6f 6f 6c 74 61 6c 6b | 2d 70 61 74 74 65 72 6e |tooltalk|-pattern|
|00001ed0| 20 70 61 74 20 69 6e 69 | 74 69 61 6c 69 7a 65 2d | pat ini|tialize-|
|00001ee0| 74 6f 6f 6c 74 61 6c 6b | 2d 70 61 74 74 65 72 6e |tooltalk|-pattern|
|00001ef0| 2d 61 74 74 72 69 62 75 | 74 65 73 20 61 74 74 72 |-attribu|tes attr|
|00001f00| 69 62 75 74 65 73 5d 20 | 33 20 28 23 24 20 2e 20 |ibutes] |3 (#$ . |
|00001f10| 36 35 31 37 29 5d 29 0a | |6517)]).| |
+--------+-------------------------+-------------------------+--------+--------+