home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / gnu / lucid / lemacs-19.6 / lisp / utils / backquote.elc < prev    next >
Emacs Compiled Lisp  |  1993-04-01  |  5.0 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.

ConfidenceProgramDetectionMatch TypeSupport
1% dexvert Emacs Compiled Lisp (other/emacsCompiledLisp) magic Unsupported
1% dexvert Combustion 2 Particle Library (other/combustion2ParticleLibrary) ext Unsupported
100% file Emacs/XEmacs v19 byte-compiled Lisp data default
99% file data default
100% TrID Emacs/XEmacs byte-compiled Lisp (generic) default
100% xdgMime text/x-emacs-lisp default (weak)



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 45 4c 43 13 00 00 00 | 0a 3b 3b 3b 20 63 6f 6d |;ELC....|.;;; com|
|00000010| 70 69 6c 65 64 20 62 79 | 20 6a 77 7a 40 74 68 61 |piled by| jwz@tha|
|00000020| 6c 69 64 6f 6d 69 64 65 | 20 6f 6e 20 4d 6f 6e 20 |lidomide| on Mon |
|00000030| 46 65 62 20 20 31 20 31 | 39 3a 32 39 3a 33 35 20 |Feb 1 1|9:29:35 |
|00000040| 31 39 39 33 0a 3b 3b 3b | 20 66 72 6f 6d 20 66 69 |1993.;;;| from fi|
|00000050| 6c 65 20 2f 63 61 64 69 | 6c 6c 61 63 31 2f 63 6f |le /cadi|llac1/co|
|00000060| 64 65 2f 62 75 69 6c 64 | 2f 6c 65 6d 61 63 73 2f |de/build|/lemacs/|
|00000070| 6c 69 73 70 2f 75 74 69 | 6c 73 2f 62 61 63 6b 71 |lisp/uti|ls/backq|
|00000080| 75 6f 74 65 2e 65 6c 0a | 3b 3b 3b 20 65 6d 61 63 |uote.el.|;;; emac|
|00000090| 73 20 76 65 72 73 69 6f | 6e 20 31 39 2e 34 2e 31 |s versio|n 19.4.1|
|000000a0| 33 20 4c 75 63 69 64 2e | 0a 3b 3b 3b 20 62 79 74 |3 Lucid.|.;;; byt|
|000000b0| 65 63 6f 6d 70 20 76 65 | 72 73 69 6f 6e 20 32 2e |ecomp ve|rsion 2.|
|000000c0| 31 30 3b 20 20 31 2d 66 | 65 62 2d 39 33 2e 0a 3b |10; 1-f|eb-93..;|
|000000d0| 3b 3b 20 6f 70 74 69 6d | 69 7a 61 74 69 6f 6e 20 |;; optim|ization |
|000000e0| 69 73 20 6f 6e 2e 0a 3b | 3b 3b 20 74 68 69 73 20 |is on..;|;; this |
|000000f0| 66 69 6c 65 20 75 73 65 | 73 20 6f 70 63 6f 64 65 |file use|s opcode|
|00000100| 73 20 77 68 69 63 68 20 | 64 6f 20 6e 6f 74 20 65 |s which |do not e|
|00000110| 78 69 73 74 20 69 6e 20 | 45 6d 61 63 73 31 38 2e |xist in |Emacs18.|
|00000120| 0a 0a 28 69 66 20 28 61 | 6e 64 20 28 62 6f 75 6e |..(if (a|nd (boun|
|00000130| 64 70 20 27 65 6d 61 63 | 73 2d 76 65 72 73 69 6f |dp 'emac|s-versio|
|00000140| 6e 29 0a 09 20 28 6f 72 | 20 28 61 6e 64 20 28 62 |n).. (or| (and (b|
|00000150| 6f 75 6e 64 70 20 27 65 | 70 6f 63 68 3a 3a 76 65 |oundp 'e|poch::ve|
|00000160| 72 73 69 6f 6e 29 20 65 | 70 6f 63 68 3a 3a 76 65 |rsion) e|poch::ve|
|00000170| 72 73 69 6f 6e 29 0a 09 | 20 20 20 20 20 28 73 74 |rsion)..| (st|
|00000180| 72 69 6e 67 2d 6c 65 73 | 73 70 20 65 6d 61 63 73 |ring-les|sp emacs|
|00000190| 2d 76 65 72 73 69 6f 6e | 20 22 31 39 22 29 29 29 |-version| "19")))|
|000001a0| 0a 20 20 20 20 28 65 72 | 72 6f 72 20 22 54 68 69 |. (er|ror "Thi|
|000001b0| 73 20 66 69 6c 65 20 77 | 61 73 20 63 6f 6d 70 69 |s file w|as compi|
|000001c0| 6c 65 64 20 66 6f 72 20 | 45 6d 61 63 73 31 39 2e |led for |Emacs19.|
|000001d0| 22 29 29 0a 0a 28 70 72 | 6f 76 69 64 65 20 27 62 |"))..(pr|ovide 'b|
|000001e0| 61 63 6b 71 75 6f 74 65 | 29 0a 28 66 73 65 74 20 |ackquote|).(fset |
|000001f0| 27 62 71 2d 70 75 73 68 | 20 27 28 6d 61 63 72 6f |'bq-push| '(macro|
|00000200| 20 2e 20 23 5b 28 76 20 | 6c 29 20 22 c0 09 c2 0b | . #[(v |l) "....|
|00000210| 09 45 45 87 22 20 5b 73 | 65 74 71 20 6c 20 63 6f |.EE." [s|etq l co|
|00000220| 6e 73 20 76 5d 20 35 20 | 22 5c 0a 50 75 73 68 65 |ns v] 5 |"\.Pushe|
|00000230| 73 20 65 76 61 6c 75 61 | 74 65 64 20 66 69 72 73 |s evalua|ted firs|
|00000240| 74 20 66 6f 72 6d 20 6f | 6e 74 6f 20 73 65 63 6f |t form o|nto seco|
|00000250| 6e 64 20 75 6e 65 76 61 | 6c 75 61 74 65 64 20 6f |nd uneva|luated o|
|00000260| 62 6a 65 63 74 0a 61 20 | 6c 69 73 74 2d 76 61 6c |bject.a |list-val|
|00000270| 75 65 20 61 74 6f 6d 22 | 5d 29 29 0a 28 62 79 74 |ue atom"|])).(byt|
|00000280| 65 2d 63 6f 64 65 20 22 | c0 c1 4d 88 c2 c3 4d 88 |e-code "|..M...M.|
|00000290| c4 c5 4d 87 22 20 5b 62 | 71 2d 63 61 61 72 20 28 |..M." [b|q-caar (|
|000002a0| 6d 61 63 72 6f 20 2e 20 | 23 5b 28 6c 29 20 22 c0 |macro . |#[(l) ".|
|000002b0| 89 09 44 44 87 22 20 5b | 63 61 72 20 6c 5d 20 33 |..DD." [|car l] 3|
|000002c0| 5d 29 20 62 71 2d 63 61 | 64 72 20 28 6d 61 63 72 |]) bq-ca|dr (macr|
|000002d0| 6f 20 2e 20 23 5b 28 6c | 29 20 22 c0 c1 5c 6e 44 |o . #[(l|) "..\nD|
|000002e0| 44 87 22 20 5b 63 61 72 | 20 63 64 72 20 6c 5d 20 |D." [car| cdr l] |
|000002f0| 33 5d 29 20 62 71 2d 63 | 64 61 72 20 28 6d 61 63 |3]) bq-c|dar (mac|
|00000300| 72 6f 20 2e 20 23 5b 28 | 6c 29 20 22 c0 c1 5c 6e |ro . #[(|l) "..\n|
|00000310| 44 44 87 22 20 5b 63 64 | 72 20 63 61 72 20 6c 5d |DD." [cd|r car l]|
|00000320| 20 33 5d 29 5d 20 32 29 | 0a 28 64 65 66 63 6f 6e | 3])] 2)|.(defcon|
|00000330| 73 74 20 62 61 63 6b 71 | 75 6f 74 65 2d 75 6e 71 |st backq|uote-unq|
|00000340| 75 6f 74 65 20 27 28 5c | 2c 29 20 22 5c 0a 2a 41 |uote '(\|,) "\.*A|
|00000350| 20 6c 69 73 74 20 6f 66 | 20 61 6c 6c 20 6f 62 6a | list of| all obj|
|00000360| 65 63 74 73 20 74 68 61 | 74 20 73 74 69 6d 75 6c |ects tha|t stimul|
|00000370| 61 74 65 20 75 6e 71 75 | 6f 74 69 6e 67 20 69 6e |ate unqu|oting in|
|00000380| 20 60 2e 20 20 4d 65 6d | 71 20 74 65 73 74 2e 22 | `. Mem|q test."|
|00000390| 29 0a 28 64 65 66 63 6f | 6e 73 74 20 62 61 63 6b |).(defco|nst back|
|000003a0| 71 75 6f 74 65 2d 73 70 | 6c 69 63 65 20 27 28 5c |quote-sp|lice '(\|
|000003b0| 2c 40 29 20 22 5c 0a 2a | 41 20 6c 69 73 74 20 6f |,@) "\.*|A list o|
|000003c0| 66 20 61 6c 6c 20 6f 62 | 6a 65 63 74 73 20 74 68 |f all ob|jects th|
|000003d0| 61 74 20 73 74 69 6d 75 | 6c 61 74 65 20 73 70 6c |at stimu|late spl|
|000003e0| 69 63 69 6e 67 20 69 6e | 20 60 2e 20 20 4d 65 6d |icing in| `. Mem|
|000003f0| 71 20 74 65 73 74 2e 22 | 29 0a 28 66 73 65 74 20 |q test."|).(fset |
|00000400| 27 5c 60 20 27 28 6d 61 | 63 72 6f 20 2e 20 23 5b |'\` '(ma|cro . #[|
|00000410| 28 66 6f 72 6d 29 20 22 | c0 09 21 87 22 20 5b 62 |(form) "|..!." [b|
|00000420| 71 2d 6d 61 6b 65 2d 6d | 61 6b 65 72 20 66 6f 72 |q-make-m|aker for|
|00000430| 6d 5d 20 32 20 22 5c 0a | 28 60 20 46 4f 52 4d 29 |m] 2 "\.|(` FORM)|
|00000440| 20 20 69 73 20 61 20 6d | 61 63 72 6f 20 74 68 61 | is a m|acro tha|
|00000450| 74 20 65 78 70 61 6e 64 | 73 20 74 6f 20 63 6f 64 |t expand|s to cod|
|00000460| 65 20 74 6f 20 63 6f 6e | 73 74 72 75 63 74 20 46 |e to con|struct F|
|00000470| 4f 52 4d 2e 0a 4e 6f 74 | 65 20 74 68 61 74 20 74 |ORM..Not|e that t|
|00000480| 68 69 73 20 69 73 20 76 | 65 72 79 20 73 6c 6f 77 |his is v|ery slow|
|00000490| 20 69 6e 20 69 6e 74 65 | 72 70 72 65 74 65 64 20 | in inte|rpreted |
|000004a0| 63 6f 64 65 2c 20 62 75 | 74 20 66 61 73 74 20 69 |code, bu|t fast i|
|000004b0| 66 20 79 6f 75 20 63 6f | 6d 70 69 6c 65 2e 0a 46 |f you co|mpile..F|
|000004c0| 4f 52 4d 20 69 73 20 6f | 6e 65 20 6f 72 20 6d 6f |ORM is o|ne or mo|
|000004d0| 72 65 20 6e 65 73 74 65 | 64 20 6c 69 73 74 73 2c |re neste|d lists,|
|000004e0| 20 77 68 69 63 68 20 61 | 72 65 20 60 61 6c 6d 6f | which a|re `almo|
|000004f0| 73 74 20 71 75 6f 74 65 | 64 27 3a 0a 54 68 65 79 |st quote|d':.They|
|00000500| 20 61 72 65 20 63 6f 70 | 69 65 64 20 72 65 63 75 | are cop|ied recu|
|00000510| 72 73 69 76 65 6c 79 2c | 20 77 69 74 68 20 6e 6f |rsively,| with no|
|00000520| 6e 2d 6c 69 73 74 73 20 | 75 73 65 64 20 75 6e 63 |n-lists |used unc|
|00000530| 68 61 6e 67 65 64 20 69 | 6e 20 74 68 65 20 63 6f |hanged i|n the co|
|00000540| 70 79 2e 0a 20 28 60 20 | 61 20 62 29 20 3d 3d 20 |py.. (` |a b) == |
|00000550| 28 6c 69 73 74 20 27 61 | 20 27 62 29 20 20 63 6f |(list 'a| 'b) co|
|00000560| 6e 73 74 72 75 63 74 73 | 20 61 20 6e 65 77 20 6c |nstructs| a new l|
|00000570| 69 73 74 20 77 69 74 68 | 20 74 77 6f 20 65 6c 65 |ist with| two ele|
|00000580| 6d 65 6e 74 73 2c 20 60 | 61 27 20 61 6e 64 20 60 |ments, `|a' and `|
|00000590| 62 27 2e 0a 20 28 60 20 | 61 20 28 62 20 63 29 29 |b'.. (` |a (b c))|
|000005a0| 20 3d 3d 20 28 6c 69 73 | 74 20 27 61 20 28 6c 69 | == (lis|t 'a (li|
|000005b0| 73 74 20 27 62 20 27 63 | 29 29 20 20 63 6f 6e 73 |st 'b 'c|)) cons|
|000005c0| 74 72 75 63 74 73 20 74 | 77 6f 20 6e 65 73 74 65 |tructs t|wo neste|
|000005d0| 64 20 6e 65 77 20 6c 69 | 73 74 73 2e 0a 0a 48 6f |d new li|sts...Ho|
|000005e0| 77 65 76 65 72 2c 20 63 | 65 72 74 61 69 6e 20 73 |wever, c|ertain s|
|000005f0| 70 65 63 69 61 6c 20 6c | 69 73 74 73 20 61 72 65 |pecial l|ists are|
|00000600| 20 6e 6f 74 20 63 6f 70 | 69 65 64 2e 20 20 54 68 | not cop|ied. Th|
|00000610| 65 79 20 73 70 65 63 69 | 66 79 20 73 75 62 73 74 |ey speci|fy subst|
|00000620| 69 74 75 74 69 6f 6e 2e | 0a 4c 69 73 74 73 20 74 |itution.|.Lists t|
|00000630| 68 61 74 20 6c 6f 6f 6b | 20 6c 69 6b 65 20 28 2c |hat look| like (,|
|00000640| 20 45 58 50 29 20 61 72 | 65 20 65 76 61 6c 75 61 | EXP) ar|e evalua|
|00000650| 74 65 64 20 61 6e 64 20 | 74 68 65 20 72 65 73 75 |ted and |the resu|
|00000660| 6c 74 20 69 73 20 73 75 | 62 73 74 69 74 75 74 65 |lt is su|bstitute|
|00000670| 64 2e 0a 20 28 60 20 61 | 20 28 2c 20 28 2b 20 78 |d.. (` a| (, (+ x|
|00000680| 20 35 29 29 29 20 3d 3d | 20 28 6c 69 73 74 20 27 | 5))) ==| (list '|
|00000690| 61 20 28 2b 20 78 20 35 | 29 29 0a 0a 45 6c 65 6d |a (+ x 5|))..Elem|
|000006a0| 65 6e 74 73 20 6f 66 20 | 74 68 65 20 66 6f 72 6d |ents of |the form|
|000006b0| 20 28 2c 40 20 45 58 50 | 29 20 61 72 65 20 65 76 | (,@ EXP|) are ev|
|000006c0| 61 6c 75 61 74 65 64 20 | 61 6e 64 20 74 68 65 6e |aluated |and then|
|000006d0| 20 61 6c 6c 20 74 68 65 | 20 65 6c 65 6d 65 6e 74 | all the| element|
|000006e0| 73 0a 6f 66 20 74 68 65 | 20 72 65 73 75 6c 74 20 |s.of the| result |
|000006f0| 61 72 65 20 73 75 62 73 | 74 69 74 75 74 65 64 2e |are subs|tituted.|
|00000700| 20 20 54 68 69 73 20 72 | 65 73 75 6c 74 20 6d 75 | This r|esult mu|
|00000710| 73 74 20 62 65 20 61 20 | 6c 69 73 74 3b 20 69 74 |st be a |list; it|
|00000720| 20 6d 61 79 0a 62 65 20 | 60 6e 69 6c 27 2e 0a 0a | may.be |`nil'...|
|00000730| 41 73 20 61 6e 20 65 78 | 61 6d 70 6c 65 2c 20 61 |As an ex|ample, a|
|00000740| 20 73 69 6d 70 6c 65 20 | 6d 61 63 72 6f 20 60 70 | simple |macro `p|
|00000750| 75 73 68 27 20 63 6f 75 | 6c 64 20 62 65 20 77 72 |ush' cou|ld be wr|
|00000760| 69 74 74 65 6e 3a 0a 20 | 20 20 28 64 65 66 6d 61 |itten:. | (defma|
|00000770| 63 72 6f 20 70 75 73 68 | 20 28 76 20 6c 29 0a 20 |cro push| (v l). |
|00000780| 20 20 20 20 20 20 20 28 | 60 20 28 73 65 74 71 20 | (|` (setq |
|00000790| 28 2c 20 6c 29 20 28 63 | 6f 6e 73 20 28 2c 40 20 |(, l) (c|ons (,@ |
|000007a0| 28 6c 69 73 74 20 76 20 | 6c 29 29 29 29 29 29 0a |(list v |l)))))).|
|000007b0| 6f 72 20 61 73 0a 20 20 | 20 28 64 65 66 6d 61 63 |or as. | (defmac|
|000007c0| 72 6f 20 70 75 73 68 20 | 28 76 20 6c 29 0a 20 20 |ro push |(v l). |
|000007d0| 20 20 20 20 20 20 28 60 | 20 28 73 65 74 71 20 28 | (`| (setq (|
|000007e0| 2c 20 6c 29 20 28 63 6f | 6e 73 20 28 2c 20 76 29 |, l) (co|ns (, v)|
|000007f0| 20 28 2c 20 6c 29 29 29 | 29 29 0a 0a 4c 49 4d 49 | (, l)))|))..LIMI|
|00000800| 54 41 54 49 4f 4e 53 3a | 20 5c 22 64 6f 74 74 65 |TATIONS:| \"dotte|
|00000810| 64 20 6c 69 73 74 73 5c | 22 20 61 72 65 20 6e 6f |d lists\|" are no|
|00000820| 74 20 61 6c 6c 6f 77 65 | 64 20 69 6e 20 46 4f 52 |t allowe|d in FOR|
|00000830| 4d 2e 0a 54 68 65 20 75 | 6c 74 69 6d 61 74 65 20 |M..The u|ltimate |
|00000840| 63 64 72 20 6f 66 20 65 | 61 63 68 20 6c 69 73 74 |cdr of e|ach list|
|00000850| 20 73 63 61 6e 6e 65 64 | 20 62 79 20 60 20 6d 75 | scanned| by ` mu|
|00000860| 73 74 20 62 65 20 60 6e | 69 6c 27 2e 0a 28 54 68 |st be `n|il'..(Th|
|00000870| 69 73 20 64 6f 65 73 20 | 6e 6f 74 20 61 70 70 6c |is does |not appl|
|00000880| 79 20 74 6f 20 63 6f 6e | 73 74 61 6e 74 73 20 69 |y to con|stants i|
|00000890| 6e 73 69 64 65 20 65 78 | 70 72 65 73 73 69 6f 6e |nside ex|pression|
|000008a0| 73 20 74 6f 20 62 65 20 | 73 75 62 73 74 69 74 75 |s to be |substitu|
|000008b0| 74 65 64 2e 29 0a 0a 53 | 75 62 73 74 69 74 75 74 |ted.)..S|ubstitut|
|000008c0| 69 6f 6e 20 65 6c 65 6d | 65 6e 74 73 20 61 72 65 |ion elem|ents are|
|000008d0| 20 6e 6f 74 20 61 6c 6c | 6f 77 65 64 20 61 73 20 | not all|owed as |
|000008e0| 74 68 65 20 63 64 72 0a | 6f 66 20 61 20 63 6f 6e |the cdr.|of a con|
|000008f0| 73 20 63 65 6c 6c 2e 20 | 20 46 6f 72 20 65 78 61 |s cell. | For exa|
|00000900| 6d 70 6c 65 2c 20 28 60 | 20 28 41 20 2e 20 28 2c |mple, (`| (A . (,|
|00000910| 20 42 29 29 29 20 64 6f | 65 73 20 6e 6f 74 20 77 | B))) do|es not w|
|00000920| 6f 72 6b 2e 0a 49 6e 73 | 74 65 61 64 2c 20 77 72 |ork..Ins|tead, wr|
|00000930| 69 74 65 20 28 60 20 28 | 41 20 28 2c 40 20 42 29 |ite (` (|A (,@ B)|
|00000940| 29 29 2e 0a 0a 59 6f 75 | 20 63 61 6e 6e 6f 74 20 |))...You| cannot |
|00000950| 63 6f 6e 73 74 72 75 63 | 74 20 76 65 63 74 6f 72 |construc|t vector|
|00000960| 73 2c 20 6f 6e 6c 79 20 | 6c 69 73 74 73 2e 20 20 |s, only |lists. |
|00000970| 56 65 63 74 6f 72 73 20 | 61 72 65 20 74 72 65 61 |Vectors |are trea|
|00000980| 74 65 64 20 61 73 0a 63 | 6f 6e 73 74 61 6e 74 73 |ted as.c|onstants|
|00000990| 2e 0a 0a 42 45 57 41 52 | 45 20 42 45 57 41 52 45 |...BEWAR|E BEWARE|
|000009a0| 20 42 45 57 41 52 45 0a | 49 6e 63 6c 75 73 69 6f | BEWARE.|Inclusio|
|000009b0| 6e 20 6f 66 20 28 2c 41 | 54 4f 4d 29 20 72 61 74 |n of (,A|TOM) rat|
|000009c0| 68 65 72 20 74 68 61 6e | 20 28 2c 20 41 54 4f 4d |her than| (, ATOM|
|000009d0| 29 0a 6f 72 20 6f 66 20 | 28 2c 40 41 54 4f 4d 29 |).or of |(,@ATOM)|
|000009e0| 20 72 61 74 68 65 72 20 | 74 68 61 6e 20 28 2c 40 | rather |than (,@|
|000009f0| 20 41 54 4f 4d 29 0a 77 | 69 6c 6c 20 72 65 73 75 | ATOM).w|ill resu|
|00000a00| 6c 74 20 69 6e 20 65 72 | 72 6f 72 73 20 74 68 61 |lt in er|rors tha|
|00000a10| 74 20 77 69 6c 6c 20 73 | 68 6f 77 20 75 70 20 76 |t will s|how up v|
|00000a20| 65 72 79 20 6c 61 74 65 | 2e 22 5d 29 29 0a 28 66 |ery late|."])).(f|
|00000a30| 73 65 74 20 27 62 71 2d | 6d 61 6b 65 2d 6d 61 6b |set 'bq-|make-mak|
|00000a40| 65 72 20 23 5b 28 66 6f | 72 6d 29 20 22 c0 c1 89 |er #[(fo|rm) "...|
|00000a50| c0 1a 1b 1c 1d c6 c7 c8 | 0e 09 21 5c 22 88 5c 6e |........|..!\".\n|
|00000a60| ad 9d 5c 6e ca 3d ab 85 | 5c 6e 0d 44 aa 93 0d 47 |..\n.=..|\n.D...G|
|00000a70| cb 55 ab 8a 5c 6e 0e 0c | 9e 41 40 0d 21 aa 83 5c |.U..\n..|.A@.!..\|
|00000a80| 6e 0d 42 2c 87 22 20 5b | 6e 69 6c 20 30 20 73 74 |n.B,." [|nil 0 st|
|00000a90| 61 74 65 20 65 63 20 71 | 63 20 74 61 69 6c 6d 61 |ate ec q|c tailma|
|00000aa0| 6b 65 72 20 6d 61 70 63 | 61 72 20 62 71 2d 69 74 |ker mapc|ar bq-it|
|00000ab0| 65 72 61 74 69 76 65 2d | 6c 69 73 74 2d 62 75 69 |erative-|list-bui|
|00000ac0| 6c 64 65 72 20 72 65 76 | 65 72 73 65 20 66 6f 72 |lder rev|erse for|
|00000ad0| 6d 20 71 75 6f 74 65 20 | 31 20 62 71 2d 73 69 6e |m quote |1 bq-sin|
|00000ae0| 67 6c 65 73 5d 20 34 20 | 22 5c 0a 47 69 76 65 6e |gles] 4 |"\.Given|
|00000af0| 20 6f 6e 65 20 61 72 67 | 75 6d 65 6e 74 2c 20 61 | one arg|ument, a|
|00000b00| 20 60 6d 6f 73 74 6c 79 | 20 71 75 6f 74 65 64 27 | `mostly| quoted'|
|00000b10| 20 6f 62 6a 65 63 74 2c | 20 70 72 6f 64 75 63 65 | object,| produce|
|00000b20| 73 20 61 20 6d 61 6b 65 | 72 2e 0a 53 65 65 20 62 |s a make|r..See b|
|00000b30| 61 63 6b 71 75 6f 74 65 | 2e 65 6c 20 66 6f 72 20 |ackquote|.el for |
|00000b40| 64 65 74 61 69 6c 73 22 | 5d 29 0a 28 62 79 74 65 |details"|]).(byte|
|00000b50| 2d 63 6f 64 65 20 22 c0 | 11 c2 c3 4d 88 c4 c5 4d |-code ".|...M...M|
|00000b60| 88 c6 c7 4d 87 22 20 5b | 28 27 62 71 2d 71 75 6f |...M." [|('bq-quo|
|00000b70| 74 65 63 61 72 20 28 61 | 70 70 65 6e 64 20 63 61 |tecar (a|ppend ca|
|00000b80| 72 29 20 28 6c 69 73 74 | 20 62 71 2d 6d 61 6b 65 |r) (list| bq-make|
|00000b90| 2d 6c 69 73 74 29 20 28 | 63 6f 6e 73 20 62 71 2d |-list) (|cons bq-|
|00000ba0| 69 64 29 29 20 62 71 2d | 73 69 6e 67 6c 65 73 20 |id)) bq-|singles |
|00000bb0| 62 71 2d 69 64 20 28 6c | 61 6d 62 64 61 20 28 78 |bq-id (l|ambda (x|
|00000bc0| 29 20 78 29 20 62 71 2d | 71 75 6f 74 65 63 61 72 |) x) bq-|quotecar|
|00000bd0| 20 23 5b 28 78 29 20 22 | c0 09 40 44 87 22 20 5b | #[(x) "|..@D." [|
|00000be0| 71 75 6f 74 65 20 78 5d | 20 32 5d 20 62 71 2d 6d |quote x]| 2] bq-m|
|00000bf0| 61 6b 65 2d 6c 69 73 74 | 20 23 5b 28 78 29 20 22 |ake-list| #[(x) "|
|00000c00| c0 09 42 87 22 20 5b 6c | 69 73 74 20 78 5d 20 32 |..B." [l|ist x] 2|
|00000c10| 5d 5d 20 32 29 0a 28 66 | 73 65 74 20 27 62 71 2d |]] 2).(f|set 'bq-|
|00000c20| 69 74 65 72 61 74 69 76 | 65 2d 6c 69 73 74 2d 62 |iterativ|e-list-b|
|00000c30| 75 69 6c 64 65 72 20 23 | 5b 28 66 6f 72 6d 29 20 |uilder #|[(form) |
|00000c40| 22 08 3a ac 88 09 5c 6e | 9e 41 40 08 21 87 08 40 |".:...\n|.A@.!..@|
|00000c50| 0b 3e ab 8a 09 0c 9e 41 | 40 08 41 40 21 87 08 40 |.>.....A|@.A@!..@|
|00000c60| 0d 3e ab 8b 09 0e 06 9e | 41 40 08 41 40 21 87 c7 |.>......|A@.A@!..|
|00000c70| 08 21 89 1e 08 3c ab 93 | 0e 08 40 c9 3d ab 8c 09 |.!...<..|..@.=...|
|00000c80| 5c 6e 9e 41 40 0e 08 41 | 40 21 aa 88 09 0c 9e 41 |\n.A@..A|@!.....A|
|00000c90| 40 0e 08 21 29 87 22 20 | 5b 66 6f 72 6d 20 73 74 |@..!)." |[form st|
|00000ca0| 61 74 65 20 62 71 2d 71 | 75 6f 74 65 66 6e 73 20 |ate bq-q|uotefns |
|00000cb0| 62 61 63 6b 71 75 6f 74 | 65 2d 75 6e 71 75 6f 74 |backquot|e-unquot|
|00000cc0| 65 20 62 71 2d 65 76 61 | 6c 66 6e 73 20 62 61 63 |e bq-eva|lfns bac|
|00000cd0| 6b 71 75 6f 74 65 2d 73 | 70 6c 69 63 65 20 62 71 |kquote-s|plice bq|
|00000ce0| 2d 73 70 6c 69 63 65 66 | 6e 73 20 62 71 2d 6d 61 |-splicef|ns bq-ma|
|00000cf0| 6b 65 2d 6d 61 6b 65 72 | 20 6e 65 77 66 6f 72 6d |ke-maker| newform|
|00000d00| 20 71 75 6f 74 65 5d 20 | 33 20 22 5c 0a 43 61 6c | quote] |3 "\.Cal|
|00000d10| 6c 65 64 20 62 79 20 62 | 71 2d 6d 61 6b 65 2d 6d |led by b|q-make-m|
|00000d20| 61 6b 65 72 2e 20 20 41 | 64 64 73 20 61 20 6e 65 |aker. A|dds a ne|
|00000d30| 77 20 69 74 65 6d 20 66 | 6f 72 6d 20 74 6f 20 74 |w item f|orm to t|
|00000d40| 61 69 6c 6d 61 6b 65 72 | 2c 20 0a 63 68 61 6e 67 |ailmaker|, .chang|
|00000d50| 69 6e 67 20 73 74 61 74 | 65 20 69 66 20 6e 65 65 |ing stat|e if nee|
|00000d60| 64 20 62 65 2c 20 73 6f | 20 74 61 69 6c 6d 61 6b |d be, so| tailmak|
|00000d70| 65 72 20 61 6e 64 20 73 | 74 61 74 65 20 63 6f 6e |er and s|tate con|
|00000d80| 73 74 69 74 75 74 65 20 | 61 20 72 65 63 69 70 69 |stitute |a recipi|
|00000d90| 65 0a 66 6f 72 20 6d 61 | 6b 69 6e 67 20 74 68 65 |e.for ma|king the|
|00000da0| 20 6c 69 73 74 20 73 6f | 20 66 61 72 2e 22 5d 29 | list so| far."])|
|00000db0| 0a 28 62 79 74 65 2d 63 | 6f 64 65 20 22 c0 11 c2 |.(byte-c|ode "...|
|00000dc0| 13 c4 15 c6 c7 4d 88 c8 | c9 4d 88 ca cb 4d 88 cc |.....M..|.M...M..|
|00000dd0| cd 4d 88 ce cf 4d 88 d0 | d1 4d 88 d2 d3 4d 88 d4 |.M...M..|.M...M..|
|00000de0| d5 4d 88 d6 d7 4d 88 d8 | d9 4d 88 da db 4d 88 dc |.M...M..|.M...M..|
|00000df0| dd 4d 88 de df 4d 88 e0 | e1 4d 88 e2 e3 4d 87 22 |.M...M..|.M...M."|
|00000e00| 20 5b 28 28 6e 69 6c 20 | 62 71 2d 73 70 6c 69 63 | [((nil |bq-splic|
|00000e10| 65 6e 69 6c 29 20 28 61 | 70 70 65 6e 64 20 62 71 |enil) (a|ppend bq|
|00000e20| 2d 73 70 6c 69 63 65 61 | 70 70 65 6e 64 29 20 28 |-splicea|ppend) (|
|00000e30| 6c 69 73 74 20 62 71 2d | 73 70 6c 69 63 65 6c 69 |list bq-|spliceli|
|00000e40| 73 74 29 20 27 62 71 2d | 73 70 6c 69 63 65 71 75 |st) 'bq-|splicequ|
|00000e50| 6f 74 65 20 28 63 6f 6e | 73 20 62 71 2d 73 70 6c |ote (con|s bq-spl|
|00000e60| 69 63 65 63 6f 6e 73 29 | 29 20 62 71 2d 73 70 6c |icecons)|) bq-spl|
|00000e70| 69 63 65 66 6e 73 20 28 | 28 6e 69 6c 20 62 71 2d |icefns (|(nil bq-|
|00000e80| 65 76 61 6c 6e 69 6c 29 | 20 28 61 70 70 65 6e 64 |evalnil)| (append|
|00000e90| 20 62 71 2d 65 76 61 6c | 61 70 70 65 6e 64 29 20 | bq-eval|append) |
|00000ea0| 28 6c 69 73 74 20 62 71 | 2d 65 76 61 6c 6c 69 73 |(list bq|-evallis|
|00000eb0| 74 29 20 27 62 71 2d 65 | 76 61 6c 71 75 6f 74 65 |t) 'bq-e|valquote|
|00000ec0| 20 28 63 6f 6e 73 20 62 | 71 2d 65 76 61 6c 63 6f | (cons b|q-evalco|
|00000ed0| 6e 73 29 29 20 62 71 2d | 65 76 61 6c 66 6e 73 20 |ns)) bq-|evalfns |
|00000ee0| 28 28 6e 69 6c 20 62 71 | 2d 71 75 6f 74 65 6e 69 |((nil bq|-quoteni|
|00000ef0| 6c 29 20 28 61 70 70 65 | 6e 64 20 62 71 2d 71 75 |l) (appe|nd bq-qu|
|00000f00| 6f 74 65 61 70 70 65 6e | 64 29 20 28 6c 69 73 74 |oteappen|d) (list|
|00000f10| 20 62 71 2d 71 75 6f 74 | 65 6c 69 73 74 29 20 27 | bq-quot|elist) '|
|00000f20| 62 71 2d 71 75 6f 74 65 | 71 75 6f 74 65 20 28 63 |bq-quote|quote (c|
|00000f30| 6f 6e 73 20 62 71 2d 71 | 75 6f 74 65 63 6f 6e 73 |ons bq-q|uotecons|
|00000f40| 29 29 20 62 71 2d 71 75 | 6f 74 65 66 6e 73 20 62 |)) bq-qu|otefns b|
|00000f50| 71 2d 71 75 6f 74 65 63 | 6f 6e 73 20 23 5b 28 66 |q-quotec|ons #[(f|
|00000f60| 6f 72 6d 29 20 22 08 40 | 3c ab 96 08 40 40 c1 3d |orm) ".@|<...@@.=|
|00000f70| ab 8f c1 5c 6e 08 40 41 | 40 44 44 08 41 40 44 10 |...\n.@A|@DD.A@D.|
|00000f80| aa 8c c3 c1 5c 6e 44 08 | 40 45 08 41 40 44 10 c4 |....\nD.|@E.A@D..|
|00000f90| 89 15 87 22 20 5b 74 61 | 69 6c 6d 61 6b 65 72 20 |..." [ta|ilmaker |
|00000fa0| 71 75 6f 74 65 20 66 6f | 72 6d 20 6c 69 73 74 20 |quote fo|rm list |
|00000fb0| 61 70 70 65 6e 64 20 73 | 74 61 74 65 5d 20 33 5d |append s|tate] 3]|
|00000fc0| 20 62 71 2d 71 75 6f 74 | 65 71 75 6f 74 65 20 23 | bq-quot|equote #|
|00000fd0| 5b 28 66 6f 72 6d 29 20 | 22 08 09 42 89 11 87 22 |[(form) |"..B..."|
|00000fe0| 20 5b 66 6f 72 6d 20 74 | 61 69 6c 6d 61 6b 65 72 | [form t|ailmaker|
|00000ff0| 5d 20 32 5d 20 62 71 2d | 71 75 6f 74 65 6c 69 73 |] 2] bq-|quotelis|
|00001000| 74 20 23 5b 28 66 6f 72 | 6d 29 20 22 c0 09 44 5c |t #[(for|m) "..D\|
|00001010| 6e 42 89 12 87 22 20 5b | 71 75 6f 74 65 20 66 6f |nB..." [|quote fo|
|00001020| 72 6d 20 74 61 69 6c 6d | 61 6b 65 72 5d 20 32 5d |rm tailm|aker] 2]|
|00001030| 20 62 71 2d 71 75 6f 74 | 65 61 70 70 65 6e 64 20 | bq-quot|eappend |
|00001040| 23 5b 28 66 6f 72 6d 29 | 20 22 08 3c ab 97 08 40 |#[(form)| ".<...@|
|00001050| 3c ab 92 08 40 40 c1 3d | ab 8b 08 40 41 5c 6e 08 |<...@@.=|...@A\n.|
|00001060| 40 41 40 42 a0 87 c1 5c | 6e 43 44 08 42 89 10 87 |@A@B...\|nCD.B...|
|00001070| 22 20 5b 74 61 69 6c 6d | 61 6b 65 72 20 71 75 6f |" [tailm|aker quo|
|00001080| 74 65 20 66 6f 72 6d 5d | 20 33 5d 20 62 71 2d 71 |te form]| 3] bq-q|
|00001090| 75 6f 74 65 6e 69 6c 20 | 23 5b 28 66 6f 72 6d 29 |uotenil |#[(form)|
|000010a0| 20 22 08 43 11 c2 89 13 | 87 22 20 5b 66 6f 72 6d | ".C....|." [form|
|000010b0| 20 74 61 69 6c 6d 61 6b | 65 72 20 71 75 6f 74 65 | tailmak|er quote|
|000010c0| 20 73 74 61 74 65 5d 20 | 32 5d 20 62 71 2d 65 76 | state] |2] bq-ev|
|000010d0| 61 6c 63 6f 6e 73 20 23 | 5b 28 66 6f 72 6d 29 20 |alcons #|[(form) |
|000010e0| 22 c0 09 5c 6e 40 45 5c | 6e 41 40 44 12 c3 89 14 |"..\n@E\|nA@D....|
|000010f0| 87 22 20 5b 6c 69 73 74 | 20 66 6f 72 6d 20 74 61 |." [list| form ta|
|00001100| 69 6c 6d 61 6b 65 72 20 | 61 70 70 65 6e 64 20 73 |ilmaker |append s|
|00001110| 74 61 74 65 5d 20 33 5d | 20 62 71 2d 65 76 61 6c |tate] 3]| bq-eval|
|00001120| 71 75 6f 74 65 20 23 5b | 28 66 6f 72 6d 29 20 22 |quote #[|(form) "|
|00001130| 08 47 c1 57 ab 8c 5c 6e | c3 c4 08 5c 22 42 10 c5 |.G.W..\n|...\"B..|
|00001140| 89 16 06 87 c5 5c 6e 44 | c7 08 44 44 10 c8 89 16 |.....\nD|..DD....|
|00001150| 06 87 22 20 5b 74 61 69 | 6c 6d 61 6b 65 72 20 33 |.." [tai|lmaker 3|
|00001160| 20 66 6f 72 6d 20 6d 61 | 70 63 61 72 20 23 5b 28 | form ma|pcar #[(|
|00001170| 78 29 20 22 c0 09 44 87 | 22 20 5b 71 75 6f 74 65 |x) "..D.|" [quote|
|00001180| 20 78 5d 20 32 5d 20 6c | 69 73 74 20 73 74 61 74 | x] 2] l|ist stat|
|00001190| 65 20 71 75 6f 74 65 20 | 61 70 70 65 6e 64 5d 20 |e quote |append] |
|000011a0| 34 5d 20 62 71 2d 65 76 | 61 6c 6c 69 73 74 20 23 |4] bq-ev|allist #|
|000011b0| 5b 28 66 6f 72 6d 29 20 | 22 08 09 42 89 11 87 22 |[(form) |"..B..."|
|000011c0| 20 5b 66 6f 72 6d 20 74 | 61 69 6c 6d 61 6b 65 72 | [form t|ailmaker|
|000011d0| 5d 20 32 5d 20 62 71 2d | 65 76 61 6c 61 70 70 65 |] 2] bq-|evalappe|
|000011e0| 6e 64 20 23 5b 28 66 6f | 72 6d 29 20 22 08 3c ab |nd #[(fo|rm) ".<.|
|000011f0| 95 08 40 3c ab 90 08 40 | 40 c1 3d ab 89 08 40 5c |..@<...@|@.=...@\|
|00001200| 6e 08 40 41 42 a1 87 08 | 47 c3 55 ab 88 5c 6e 08 |n.@AB...|G.U..\n.|
|00001210| 42 10 c4 89 15 87 c1 5c | 6e 44 08 42 89 10 87 22 |B......\|nD.B..."|
|00001220| 20 5b 74 61 69 6c 6d 61 | 6b 65 72 20 6c 69 73 74 | [tailma|ker list|
|00001230| 20 66 6f 72 6d 20 31 20 | 63 6f 6e 73 20 73 74 61 | form 1 |cons sta|
|00001240| 74 65 5d 20 33 5d 20 62 | 71 2d 65 76 61 6c 6e 69 |te] 3] b|q-evalni|
|00001250| 6c 20 23 5b 28 66 6f 72 | 6d 29 20 22 08 43 11 c2 |l #[(for|m) ".C..|
|00001260| 89 13 87 22 20 5b 66 6f | 72 6d 20 74 61 69 6c 6d |..." [fo|rm tailm|
|00001270| 61 6b 65 72 20 6c 69 73 | 74 20 73 74 61 74 65 5d |aker lis|t state]|
|00001280| 20 32 5d 20 62 71 2d 73 | 70 6c 69 63 65 63 6f 6e | 2] bq-s|plicecon|
|00001290| 73 20 23 5b 28 66 6f 72 | 6d 29 20 22 08 c1 5c 6e |s #[(for|m) "..\n|
|000012a0| 40 5c 6e 41 40 45 44 12 | c3 89 14 87 22 20 5b 66 |@\nA@ED.|...." [f|
|000012b0| 6f 72 6d 20 63 6f 6e 73 | 20 74 61 69 6c 6d 61 6b |orm cons| tailmak|
|000012c0| 65 72 20 61 70 70 65 6e | 64 20 73 74 61 74 65 5d |er appen|d state]|
|000012d0| 20 34 5d 20 62 71 2d 73 | 70 6c 69 63 65 71 75 6f | 4] bq-s|plicequo|
|000012e0| 74 65 20 23 5b 28 66 6f | 72 6d 29 20 22 08 c1 5c |te #[(fo|rm) "..\|
|000012f0| 6e 44 44 12 c3 89 14 87 | 22 20 5b 66 6f 72 6d 20 |nDD.....|" [form |
|00001300| 71 75 6f 74 65 20 74 61 | 69 6c 6d 61 6b 65 72 20 |quote ta|ilmaker |
|00001310| 61 70 70 65 6e 64 20 73 | 74 61 74 65 5d 20 33 5d |append s|tate] 3]|
|00001320| 20 62 71 2d 73 70 6c 69 | 63 65 6c 69 73 74 20 23 | bq-spli|celist #|
|00001330| 5b 28 66 6f 72 6d 29 20 | 22 08 c1 5c 6e 42 44 12 |[(form) |"..\nBD.|
|00001340| c3 89 14 87 22 20 5b 66 | 6f 72 6d 20 6c 69 73 74 |...." [f|orm list|
|00001350| 20 74 61 69 6c 6d 61 6b | 65 72 20 61 70 70 65 6e | tailmak|er appen|
|00001360| 64 20 73 74 61 74 65 5d | 20 33 5d 20 62 71 2d 73 |d state]| 3] bq-s|
|00001370| 70 6c 69 63 65 61 70 70 | 65 6e 64 20 23 5b 28 66 |pliceapp|end #[(f|
|00001380| 6f 72 6d 29 20 22 08 09 | 42 89 11 87 22 20 5b 66 |orm) "..|B..." [f|
|00001390| 6f 72 6d 20 74 61 69 6c | 6d 61 6b 65 72 5d 20 32 |orm tail|maker] 2|
|000013a0| 5d 20 62 71 2d 73 70 6c | 69 63 65 6e 69 6c 20 23 |] bq-spl|icenil #|
|000013b0| 5b 28 66 6f 72 6d 29 20 | 22 c0 11 5c 6e 43 89 13 |[(form) |"..\nC..|
|000013c0| 87 22 20 5b 61 70 70 65 | 6e 64 20 73 74 61 74 65 |." [appe|nd state|
|000013d0| 20 66 6f 72 6d 20 74 61 | 69 6c 6d 61 6b 65 72 5d | form ta|ilmaker]|
|000013e0| 20 32 5d 5d 20 32 29 0a | | 2]] 2).| |
+--------+-------------------------+-------------------------+--------+--------+