$ od -c -N 50000 [_CDCSL_93-16_]<1>Cedar>release>SchemeLib>Syntax1.$cheme 0000000 # 001 006 021 006 l a m b d a 004 c o n s 0000020 003 . . . \b n e w - b o d y 005 e r 0000040 r o r \r s y n t a x - m a t c h 0000060 ? 005 c a d d r 033 h a n d l e - i 0000100 n t e r n a l - d e f i n i t i 0000120 o n s 004 t 1 0 8 004 t 1 0 5 004 t 1 0000140 0 3 004 a r g s 004 c a d r 005 c d d 0000160 d r \t m o r e - b o d y 004 b o d 0000200 y \v m a k e - s y n t a x 021 020 0000220 I n t e r p r e t e d C o d e 0000240 022 \0 017 023 023 002 \a 020 \a \0 003 037 \n \0 002 032 0000260 ( 001 003 $ 001 025 * 021 022 A n o n y m 0000300 o u s f u n c t i o n 022 003 \a \b 0000320 \a \n \a \t 016 023 023 004 \f \a 001 \a 005 \a \a \a 0000340 001 \a 006 \a \r \a 005 \a 001 \a 001 \a \f \a 004 \a 0000360 004 004 \f 037 Q \0 005 032 024 \0 004 & \0 001 033 0000400 025 026 001 005 022 H 034 035 036 004 001 003 036 005 0000420 001 003 004 003 & \0 002 036 006 027 030 005 002 005 0000440 022 < 036 \a 030 006 036 \b 036 \t 001 003 002 004 0000460 \n 036 \n 030 \a 030 \b 002 030 \t \f 004 036 \v 030 0000500 \n 030 \v 001 \v \a \0 001 \a \0 004 005 \a \0 \a 0000520 \v \a 017 \a 016 \a 002 \0 002 \a 003 \a 002 \v \a \0 0000540 021 033 d o e s n o t f i t ' 0000560 w i t h ' p a t t e r n 002 \a 003 0000600 \a 002 \a \0 021 016 i n v a l i d s y 0000620 n t a x 021 004 t 1 0 8 \0 \a \0 021 002 ( 0000640 ) \0 \n # 001 006 025 006 d e f i n e 004 c 0000660 o n s 005 c a d d r 004 l i s t \r s 0000700 y n t a x - m a t c h ? 005 c d a 0000720 d r 005 c a a d r 005 c d d d r 005 e 0000740 r r o r 004 c a d r \n e x p r e s 0000760 s i o n 004 n a m e 006 l a m b d a 0001000 003 . . . \t m o r e - b o d y 004 b 0001020 o d y 004 a r g s 002 f n 004 t 1 0 9 0001040 004 t 1 1 2 \v m a k e - s y n t a 0001060 x 021 020 I n t e r p r e t e d 0001100 C o d e 022 \0 017 023 023 002 \a 024 \a \0 003 037 0001120 \n \0 002 032 ( 001 003 $ 001 025 * 021 022 A n 0001140 o n y m o u s f u n c t i o n 0001160 022 002 \a 023 \a 022 016 023 023 004 017 \a 001 \a 004 \a 0001200 003 \a 006 \a 001 \a 001 \a 005 \a 001 \a 002 \a \a \a 0001220 004 \a 003 \a \t \a 002 \a \b 004 \v 037 V \0 \v 032 0001240 024 \0 004 & \0 001 033 025 026 001 005 022 3 034 0001260 027 035 001 003 036 004 030 005 036 005 036 006 001 003 0001300 036 \a 036 \b 001 003 036 \t 001 003 004 004 004 \v 0001320 036 \n 030 006 030 \a 001 005 022 M 036 \v 030 \b 036 0001340 \f 001 003 036 \r 001 003 \v 036 016 030 \t 030 \n 0001360 001 \v \a \0 001 \a \0 004 005 \a \0 005 001 \a 021 0001400 \a 020 \a 017 \a 016 \a \r \a \0 \a \f 001 \a \0 003 0001420 \a \0 \a \v \a \n \t \a \0 021 016 i n v a l 0001440 i d s y n t a x 021 004 t 1 1 2 \0 0001460 \a \0 021 002 ( ) \0 \n # 001 006 \v 005 b e g 0001500 i n 001 x \r s y n t a x - m a t c 0001520 h ? 004 c o n s 004 t 1 1 3 004 c a d 0001540 r 003 . . . 005 e r r o r 003 c d r 004 0001560 t 1 1 5 \v m a k e - s y n t a x 0001600 021 020 I n t e r p r e t e d C 0001620 o d e 022 \0 017 023 023 002 \a \n \a \0 003 037 \n 0001640 \0 002 032 ( 001 003 $ 001 025 * 021 022 A n o 0001660 n y m o u s f u n c t i o n 022 0001700 002 \a \t \a 004 016 023 023 004 \a \a 003 \a 002 \a 005 0001720 \a 002 \a 003 \a \b \a \a 004 \t 037 2 \0 004 032 024 0001740 \0 004 & \0 001 033 025 026 001 005 022 026 034 0001760 001 \t 035 027 030 005 001 005 022 ) 036 004 030 006 036 0002000 005 001 003 \n 036 006 030 \a 030 \b 001 \v \a \0 0002020 001 \a \0 002 \a \0 \a 001 001 \a \0 003 \a \0 \a 001 0002040 \a 006 \f \a \0 021 016 i n v a l i d s 0002060 y n t a x 021 004 t 1 1 5 \0 \a \0 021 002 0002100 ( ) \0 \n # 001 006 \r 002 i f 004 c o n s 0002120 004 p r e d 005 c a d d r 004 c a d r 0002140 \r s y n t a x - m a t c h ? 004 l 0002160 i s t 003 a l t 005 e r r o r 006 c a 0002200 d d d r 004 t 1 1 8 004 t 1 1 9 \v m 0002220 a k e - s y n t a x 021 020 I n t 0002240 e r p r e t e d C o d e 022 \0 017 0002260 023 023 002 \a \f \a \0 003 037 \n \0 002 032 ( 001 003 0002300 $ 001 025 * 021 022 A n o n y m o u s 0002320 f u n c t i o n 022 002 \a \v \a \n 016 0002340 023 023 004 \r \a 001 \a 005 \a 006 \a 004 \a 003 \a \t 0002360 \a 005 \a 001 \a 001 \a 004 \a 001 \a 003 \a \b 004 \v 0002400 037 O \0 \a 032 024 \0 004 & \0 001 033 025 026 0002420 001 005 022 $ 034 027 035 001 003 036 004 001 003 036 0002440 005 001 003 \f 004 036 006 030 005 030 006 001 005 022 0002460 F 036 \a 030 \a 036 \b 036 \t 001 003 036 \n 036 \v 0002500 001 003 030 \b 004 004 \n 036 \f 030 \t 030 \n 001 0002520 \v \a \0 001 \a \0 004 004 \a \0 \a 002 \a 001 \a \a 0002540 \r 001 \a \0 003 \a \0 \a 002 \a 001 \r 001 001 \f \a 0002560 \0 021 016 i n v a l i d s y n t a 0002600 x 021 004 t 1 1 9 \0 \a \0 021 002 ( ) \0 \n 0002620 # 001 006 \f 004 c o n s 003 m a p \r e s 0002640 s e n t i a l - l e t \v m a k e 0002660 - s y n t a x 004 b o d y \b b i n 0002700 d i n g s 003 c a r \v e x p r e s 0002720 s i o n s \t v a r i a b l e s 006 0002740 l a m b d a 004 l i s t 004 c a d r 0002760 021 020 I n t e r p r e t e d C 0003000 o d e 022 \0 017 023 023 002 \a 003 \a 002 003 037 \n 0003020 \0 002 032 ( 001 003 $ 001 025 * 021 022 A n o 0003040 n y m o u s f u n c t i o n 022 0003060 004 \a 005 \a 004 \a \b \a \a 016 024 024 004 \a \a 001 0003100 \a 006 \a 001 \a \v \a \n \a \0 \a \0 002 037 " \0 0003120 006 032 033 \0 004 & \0 002 034 035 \0 004 & \0 0003140 003 036 004 036 005 024 036 006 002 001 004 004 003 0003160 \n \a \t 021 021 ( b i n d i n g s . 0003200 b o d y ) \0 \a 002 021 002 ( ) \0 \n # 0003220 001 006 034 004 c o n s 004 l o o p 003 l e 0003240 t 004 c a d r 003 c d r 005 n u l l ? 0003260 003 . . . 004 l i s t 005 c a d d r \r 0003300 s y n t a x - m a t c h ? 004 b o 0003320 d y 006 l a m b d a \t m o r e - b 0003340 o d y 003 v a l 003 v a r 004 t 1 2 3 0003360 004 c a a r 004 t 1 2 8 005 c a d a r 0003400 004 n a m e 006 l e t r e c 005 e r r 0003420 o r 006 c d d d d r 005 c d d d r 006 0003440 c a d d d r \v m a k e - s y n t 0003460 a x 004 t 1 2 1 004 t 1 2 9 021 020 I 0003500 n t e r p r e t e d C o d e 022 0003520 \0 017 023 023 002 \a 031 \a 002 003 037 \n \0 002 032 ( 0003540 001 003 $ 001 025 * 021 022 A n o n y m o 0003560 u s f u n c t i o n 022 006 \a 033 \a 0003600 032 \a 001 \a 001 \a 001 \a 001 016 023 023 004 031 \a \0 0003620 \a \t \a \0 \a \0 \a \0 \a 003 \a \0 \a \b \a 027 0003640 \a 003 \a \t \a \0 \a \a \a \a \a \a \a 003 \a \0 0003660 \a \0 \a \b \a \0 \a 030 \a 026 \a 003 \a \b \a 025 0003700 004 023 037 201 0 \0 016 032 024 \0 004 & \0 001 033 0003720 025 026 001 005 022 K 034 035 027 036 004 030 005 & \0 0003740 002 ( 006 & \0 002 002 036 005 001 003 003 036 006 0003760 036 \a 001 003 036 \b 001 003 004 004 004 030 \a & 0004000 \0 003 ( \b & \0 003 003 036 \t 001 003 003 \n 0004020 036 \n 030 \t 030 \n 001 005 022 247 036 \v 036 \f 030 0004040 \v 036 \r 036 016 036 017 001 003 036 020 030 \f 036 021 0004060 030 \r & \0 004 ( 016 & \0 004 004 036 022 001 0004100 003 003 036 023 036 024 001 003 036 025 001 003 004 004 0004120 004 004 003 036 026 001 003 005 030 017 & \0 005 ( 020 0004140 & \0 005 005 036 027 001 003 003 \n 036 030 030 021 0004160 030 022 001 \v \a 002 001 \a 002 004 005 \a 002 002 002 0004200 \a 016 \a \r \a 006 \a \n \a \f \a 006 \a \v 017 0004220 \a 001 022 001 \a 017 017 024 024 004 004 \a 005 \a \0 \a 0004240 020 \a 004 002 037 030 \0 005 032 \0 003 022 \n 024 * 0004260 033 034 \0 003 ! 001 002 035 \0 003 003 \n \0 021 0004300 006 ( t 1 2 3 ) \0 017 \a 001 022 001 \a 017 0004320 017 024 024 004 004 \a 005 \a \0 \a 022 \a 004 002 037 030 0004340 \0 005 032 \0 003 022 \n 024 * 033 034 \0 003 ! 0004360 001 003 035 \0 003 003 \n \0 021 006 ( t 1 2 3 0004400 ) \0 001 \a 002 004 006 \a 002 \a 023 002 002 \a 016 \a 0004420 \r \a 006 \a \n \a \f \a 006 \a 024 \a \v 017 \a 0004440 001 022 001 \a 021 017 024 024 004 004 \a 005 \a \0 \a 020 0004460 \a 004 002 037 030 \0 005 032 \0 003 022 \n 024 * 033 0004500 034 \0 003 ! 001 004 035 \0 003 003 \n \0 021 006 0004520 ( t 1 2 8 ) \0 017 \a 001 022 001 \a 021 017 0004540 024 024 004 004 \a 005 \a \0 \a 022 \a 004 002 037 030 \0 0004560 005 032 \0 003 022 \n 024 * 033 034 \0 003 ! 001 0004600 005 035 \0 003 003 \n \0 021 006 ( t 1 2 8 ) 0004620 \0 \a 002 021 016 i n v a l i d s y n 0004640 t a x 021 004 t 1 2 9 \0 \a 002 021 002 ( ) 0004660 \0 \n # 001 006 025 004 l e t * 004 c o n s 0004700 003 . . . 004 l i s t 005 c d d d r 005 0004720 c a d d r \r s y n t a x - m a t 0004740 c h ? \t m o r e - b o d y 004 b o 0004760 d y 003 l e t 003 v a r 004 m o r e 003 0005000 v a l 005 e r r o r 005 c d a d r 006 0005020 c d a a d r 003 c a r 006 c a a a d 0005040 r 004 t 1 3 0 004 t 1 3 6 \v m a k e 0005060 - s y n t a x 021 020 I n t e r p 0005100 r e t e d C o d e 022 \0 017 023 023 002 0005120 \a 024 \a \0 003 037 \n \0 002 032 ( 001 003 $ 001 025 0005140 * 021 022 A n o n y m o u s f u 0005160 n c t i o n 022 002 \a 023 \a 022 016 023 023 004 0005200 025 \a 001 \a 006 \a 001 \a 001 \a 001 \a 005 \a 004 \a 0005220 006 \a 003 \a 003 \a 003 \a 021 \a 020 \a 017 \a 001 \a 0005240 001 \a 016 \a 001 \a 005 \a 004 \a \r 004 \f 037 l \0 0005260 \v 032 024 \0 004 & \0 001 033 025 026 001 005 022 0005300 & 034 027 035 030 005 036 004 036 005 001 003 036 006 0005320 001 003 004 004 \n 036 \a 030 006 030 \a 001 005 022 c 0005340 036 \b 030 \b 036 \t 036 \n 036 \v 001 003 036 \f 036 0005360 \r 001 003 003 004 003 036 016 030 \t 036 017 036 020 0005400 001 003 036 021 036 022 001 003 036 023 001 003 004 004 0005420 004 \v 036 024 030 \n 030 \v 001 \v \a \0 001 \a \0 0005440 004 005 \a \0 \0 \a \b \a \a \a 002 \a \t \0 001 \a 0005460 \0 004 005 \a \0 003 002 \a \n \a \f \a \v \a 002 \a 0005500 \b \a \a \a 002 \a \t \a \0 \a \0 021 016 i n v 0005520 a l i d s y n t a x 021 004 t 1 3 0005540 6 \0 \a \0 021 002 ( ) \0 \n # 001 006 017 003 c 0005560 a r 004 l i s t 001 x 004 c o n s 003 m 0005600 a p 020 e s s e n t i a l - l e t 0005620 r e c \f b i n d i n g - l i s t 0005640 \v m a k e - s y n t a x \b n e w 0005660 - b o d y \f n e w - b i n d i n 0005700 g s 004 b o d y 006 a p p e n d 004 c 0005720 a d r 003 l e t 004 s e t ! 021 020 I 0005740 n t e r p r e t e d C o d e 022 0005760 \0 017 023 023 002 \a \a \a 005 003 037 \n \0 002 032 ( 0006000 001 003 $ 001 025 * 021 022 A n o n y m o 0006020 u s f u n c t i o n 022 004 \a 006 \a 0006040 \n \a \t \a \b 016 024 024 004 005 \a 004 \a \v \a 004 0006060 \a 003 \a 003 004 004 037 " \0 005 032 ( 001 \0 004 0006100 & \0 002 033 034 ( 002 \0 004 001 004 & \0 003 0006120 035 026 036 004 002 003 004 \n 021 022 A n o 0006140 n y m o u s f u n c t i o n 022 0006160 001 \a 002 017 024 024 002 \a 001 \a \0 002 037 \t \0 003 0006200 032 033 \0 003 024 \n 017 021 003 ( x ) \0 021 0006220 022 A n o n y m o u s f u n c t 0006240 i o n 022 001 \a 002 017 024 024 003 \a 001 \a \0 \a 0006260 \f 002 037 \r \0 005 032 024 033 \0 003 034 \0 003 0006300 \v \a 016 021 003 ( x ) \0 \a \r 021 025 ( b i 0006320 n d i n g - l i s t . b o d 0006340 y ) \0 \a 005 021 002 ( ) \0 \n # 001 006 034 006 0006360 l e t r e c 004 c o n s 004 l o o p 0006400 003 . . . \b n e w - b o d y 005 e r 0006420 r o r 003 c d r 004 c a a r 004 l i s 0006440 t 005 n u l l ? 004 t 1 3 9 \r s y n 0006460 t a x - m a t c h ? 004 c a d r 005 0006500 c d d d r 005 c a d d r 033 h a n d 0006520 l e - i n t e r n a l - d e f i 0006540 n i t i o n s 004 t 1 4 0 \v m a k 0006560 e - s y n t a x 004 t 1 3 7 004 t 1 0006600 4 4 003 l e t 004 s e t ! 005 c a d a 0006620 r 006 a p p e n d 003 v a l 003 v a r 0006640 \t m o r e - b o d y 004 b o d y 0006660 021 020 I n t e r p r e t e d C o 0006700 d e 022 \0 017 023 023 002 \a 021 \a \0 003 037 \n \0 0006720 002 032 ( 001 003 $ 001 025 * 021 022 A n o n 0006740 y m o u s f u n c t i o n 022 005 0006760 \a 023 \a 022 \a 020 \a 002 \a 002 016 023 023 004 016 \a 0007000 001 \a \v \a 017 \a 001 \a 016 \a \r \a \v \a 001 \a 0007020 001 \a \f \a 027 \a \f \a 005 \a 005 004 020 037 s \0 0007040 \b 032 024 \0 004 & \0 001 033 025 026 001 005 022 0007060 j 034 035 036 004 001 003 036 005 001 003 004 003 & 0007100 \0 002 036 006 027 030 005 002 005 022 ^ 036 \a 030 006 0007120 036 \b 030 \a & \0 003 ( \b & \0 003 003 036 \t 0007140 001 003 003 036 \n 030 \t & \0 004 ( \n & \0 004 0007160 004 036 \v 001 003 003 002 004 004 \n 036 \f 030 0007200 \v 030 \f 002 030 \r \f 004 036 \r 030 016 030 017 0007220 001 \v \a \0 001 \a \0 004 005 \a \0 002 002 \a 031 \a 0007240 030 \a 003 \a 033 \a 032 \a 003 \0 002 \a 004 \a 003 \a 0007260 024 017 \a 002 022 001 \a \n 017 024 024 004 005 \a \t 0007300 \a 001 \a \b \a \a \a 006 003 037 034 \0 005 032 \0 0007320 003 022 \n 024 * 033 034 035 \0 003 025 004 ! 001 003 0007340 036 004 \0 003 003 \n \0 017 021 006 ( t 1 3 9 0007360 ) \0 017 \a 002 022 001 \a \n 017 024 024 004 006 \a 0007400 \t \a 001 \a \b \a \a \a 026 \a 006 003 037 ! \0 006 0007420 032 \0 003 022 \n 024 * 033 034 025 035 \0 003 036 0007440 004 \0 003 005 ! 001 004 036 005 \0 003 003 \n \0 0007460 \a 025 021 006 ( t 1 3 9 ) \0 \a \0 021 033 d 0007500 o e s n o t f i t ' w i t 0007520 h ' p a t t e r n 002 \a 004 \a 003 \a 0007540 \0 021 016 i n v a l i d s y n t a 0007560 x 021 004 t 1 4 4 \0 \a \0 021 002 ( ) \0 \n 0007600 # 001 006 034 003 c d r 003 c a r 004 c o n 0007620 s 033 h a n d l e - i n t e r n a 0007640 l - d e f i n i t i o n s 005 n u 0007660 l l ? 005 i n n e r \a e x p a n d 0007700 * 004 c a a r 004 m e m q 005 p a i r 0007720 ? 005 e r r o r 005 d e f n s 004 b o 0007740 d y 003 e q ? \v e x p a n d - o n 0007760 c e 006 l e t r e c 005 b e g i n 006 0010000 d e f i n e \a r e v e r s e 003 m 0010020 a p 004 l i s t 004 c d a r 006 a p p 0010040 e n d \n w h o l e - b o d y 003 n 0010060 o t \a s t r i n g ? 005 x f o r m 0010100 004 f o r m 021 020 I n t e r p r e 0010120 t e d C o d e 022 \0 017 023 023 001 \a 003 0010140 003 037 \b \0 001 ( 001 $ \0 025 * \a 003 022 003 0010160 \a 027 \a 006 \a 005 017 024 024 004 \b \a 031 \a 001 \a 0010200 030 \a 004 \a \0 \a 002 \a 001 \a \0 004 \b 037 D \0 0010220 005 024 & \0 001 025 & \0 002 ( 003 & \0 001 ( 004 0010240 & \0 002 032 033 \0 003 003 022 ' 034 035 036 004 0010260 \0 003 003 003 016 ) 030 005 022 = 036 005 036 006 \0 0010300 003 002 036 \a \0 003 030 006 004 \n 002 \0 0010320 030 \a \n 017 017 \a 006 022 002 \a 033 \a 032 017 024 0010340 024 002 \a 016 \a \r 001 037 032 \0 003 032 \0 003 & 0010360 \0 001 033 \0 001 004 022 024 \0 * ! 001 001 0010400 001 \t 021 006 ( f o r m ) \0 \a 005 022 0010420 002 \a \f \a \v 017 027 002 027 002 004 027 \a 004 \a \n 0010440 \a \t \a 001 \a \b \a \a \a \0 \a 002 \a 001 \a \t 0010460 \a 001 \a \b \a \a \a 026 \a 025 \a \0 \a 004 \a 024 0010500 \a 002 \a 002 \a 023 \a \0 \a 022 004 \b 037 201 \n \0 0010520 \b 032 \0 003 022 017 033 024 ! 001 \0 025 \v 034 035 0010540 \0 003 003 022 " 036 004 036 005 \0 003 026 004 016 0010560 # 027 022 < ! 001 002 036 006 \0 003 036 \a ! 001 0010600 001 036 \b \0 003 003 001 004 \n 036 \t 036 \n 0010620 \0 003 003 022 R 036 \v 036 \f \0 003 030 005 004 016 0010640 T 030 006 022 i ! 001 002 036 \r 036 016 \0 003 036 0010660 017 \0 003 004 001 \n 036 020 001 003 022 s 0010700 \0 * 036 021 036 022 030 \a 036 023 036 024 036 025 036 026 0010720 001 003 004 \0 004 004 \t \a 003 021 \n E m p 0010740 t y b o d y 002 \a 021 \t 017 002 \a 020 \f 0010760 017 \a 017 021 \f ( b o d y d e f n s 0011000 ) \0 017 \0 \0 021 6 ( w h o l e - b o 0011020 d y ) H e l p e r f o r e 0011040 x p a n d i n g i n t e r n a 0011060 l d e f i n i t i o n s \0 \a 003 0011100 021 002 ( ) \0 \n # 001 006 016 003 a n d \r s 0011120 y n t a x - m a t c h ? 004 c o n 0011140 s 001 x 004 c a d r 004 l i s t 005 e r 0011160 r o r 004 c d d r 001 y 002 i f 003 . . 0011200 . 004 t 1 4 5 004 t 1 5 0 \v m a k e 0011220 - s y n t a x 021 020 I n t e r p 0011240 r e t e d C o d e 022 \0 017 023 023 002 0011260 \a \r \a \0 003 037 \n \0 002 032 ( 001 003 $ 001 025 0011300 * 021 022 A n o n y m o u s f u 0011320 n c t i o n 022 002 \a \f \a \v 016 023 023 004 0011340 \n \a 002 \a 001 \a 001 \a 004 \a 001 \a 005 \a 004 \a 0011360 002 \a \a \a 006 004 016 037 M \0 \a 032 024 \0 004 0011400 & \0 001 033 025 026 001 005 022 024 027 * 034 030 005 0011420 030 006 001 005 022 " 035 001 \t 036 004 030 \a 030 0011440 \b 001 005 022 D 036 005 030 \t 036 006 001 003 036 0011460 \a 030 \n 036 \b 001 003 004 030 \v \f 004 036 \t 030 0011500 \f 030 \r 001 \v \a \0 001 \a \0 001 \a \0 016 001 0011520 \a \0 002 \a \0 \a 003 001 \a \0 004 004 \a \0 \a 003 0011540 \a \b \a \n \a \t \a \0 017 \a \0 021 016 i n v 0011560 a l i d s y n t a x 021 004 t 1 5 0011600 0 \0 \a \0 021 002 ( ) \0 \n # 001 006 022 002 o 0011620 r 004 l i s t 004 c o n s \r s y n t 0011640 a x - m a t c h ? 005 f i r s t 005 0011660 t h u n k 001 x 004 c a d r 005 e r r 0011700 o r 004 c d d r 004 t 1 5 1 004 t 1 5 0011720 4 001 y 003 l e t 003 . . . 002 i f 006 l 0011740 a m b d a \v m a k e - s y n t a 0011760 x 021 020 I n t e r p r e t e d 0012000 C o d e 022 \0 017 023 023 002 \a 021 \a \0 003 037 0012020 \n \0 002 032 ( 001 003 $ 001 025 * 021 022 A n 0012040 o n y m o u s f u n c t i o n 0012060 022 002 \a \v \a \n 016 023 023 004 017 \a 002 \a 003 \a 0012100 003 \a \a \a 003 \a 002 \a 002 \a 001 \a 001 \a \a \a 0012120 001 \a 001 \a 002 \a \t \a \b 004 022 037 c \0 016 032 0012140 024 \0 004 & \0 001 033 025 026 001 005 022 024 027 0012160 * 034 030 005 030 006 001 005 022 " 035 001 \t 036 0012200 004 030 \a 030 \b 001 005 022 Z 036 005 030 \t 036 006 0012220 036 \a 036 \b 030 \n 036 \t 001 003 004 036 \n 030 \v 0012240 036 \v 030 \f 030 \r 036 \f 030 016 036 \r 001 003 004 0012260 005 004 004 030 017 004 \n 036 016 030 020 030 021 001 \v 0012300 \a \0 001 \a \0 001 \a \0 017 001 \a \0 002 \a \0 \a 0012320 006 001 \a \0 004 004 \a \0 \a 006 \a \f \a 016 \a \r 0012340 \a 004 \a 005 \a 020 \0 \a \0 001 004 004 \a 017 \a 004 0012360 \a 004 001 \a 005 \a \0 021 016 i n v a l i d 0012400 s y n t a x 021 004 t 1 5 4 \0 \a \0 0012420 021 002 ( ) \0 \n # 001 006 037 004 c o n d 004 0012440 c o n s 004 l i s t 004 e l s e 002 = 0012460 > 003 . . . \r s y n t a x - m a t 0012500 c h ? 004 c d d r 005 c a a d r 004 t 0012520 e s t 004 m o r e 005 b e g i n \v t 0012540 e s t - r e s u l t 017 r e c i p 0012560 i e n t - t h u n k 002 i f \n c o 0012600 n d - t h u n k 006 l a m b d a 006 0012620 c d d a d r 005 e r r o r 005 c d a 0012640 d r 003 c a r 006 c a d a d r 004 t 1 0012660 5 6 004 t 1 6 6 \v m a k e - s y n 0012700 t a x 004 e x p r 003 l e t \t r e c 0012720 i p i e n t 005 e x p r 2 005 e x p 0012740 r 1 002 o r 021 020 I n t e r p r e 0012760 t e d C o d e 022 \0 017 023 023 002 \a 030 0013000 \a \0 003 037 \n \0 002 032 ( 001 003 $ 001 025 * 0013020 021 022 A n o n y m o u s f u n c 0013040 t i o n 022 002 \a 027 \a 026 016 023 023 004 " \a 0013060 001 \a 006 \a 006 \a 001 \a 001 \a 025 \a 021 \a 006 \a 0013100 002 \a \b \a 001 \a \a \a 006 \a 001 \a 001 \a 002 \a 0013120 002 \a \b \a 002 \a 002 \a 024 \a 021 \a 002 \a 002 \a 0013140 001 \a \a \a 006 \a 002 \a \b \a 001 \a 023 \a 001 \a 0013160 \a \a 022 004 037 037 201 M \0 017 032 024 \0 004 & 0013200 \0 001 033 025 026 001 005 022 024 027 * 034 030 005 030 0013220 006 001 005 022 / 035 030 \a 036 004 036 005 001 003 0013240 036 006 001 003 004 \n 036 \a 030 \b 030 \t 001 005 0013260 022 N 036 \b 030 \n 036 \t 001 003 036 \n 030 \v 036 0013300 \v 001 003 004 \v 036 \f 030 \f 030 \r 001 005 022 0013320 232 036 \r 030 016 036 016 036 017 036 020 030 017 036 021 0013340 001 003 004 036 022 030 020 036 023 030 021 030 022 036 024 036 0013360 025 001 003 003 005 004 036 026 030 023 036 027 030 024 030 0013400 025 036 030 030 026 036 031 001 003 004 005 004 005 030 027 0013420 004 \n 036 032 030 030 030 031 001 005 022 304 036 033 030 0013440 032 036 034 001 003 036 035 030 033 036 036 001 003 004 0013460 036 037 030 034 036 001 003 004 \f 004 036 ! 030 035 0013500 030 036 001 \v \a \0 003 \a \0 \a 003 \a 004 001 \a 0013520 \0 001 \a \v 003 \a \0 \a 003 \a 004 002 \a \0 004 004 0013540 \a 003 \a 035 \a 034 \a 005 \a \v 003 \a \0 \a 003 \a 0013560 004 004 004 \a \0 001 \a \t \a \n \a 005 \a 036 \a \0 0013600 003 \a \0 \a 003 \a 004 004 004 \a \0 003 \a \t \a 004 0013620 \a 033 \a \n \a 005 \a 032 \a \f \a \r \a 020 \0 \a 0013640 017 \a 020 \0 \a \0 001 004 004 \a 016 \a \f 002 001 \a 0013660 \r \a \f 001 \a 017 003 \a \0 \a 003 \a 004 004 004 \a 0013700 \0 003 \a \t \a 031 \a 005 \a \n \a 005 \a 016 \a \v 0013720 \a \0 \a \0 021 016 i n v a l i d s y 0013740 n t a x 021 004 t 1 6 6 \0 \a \0 021 002 ( 0013760 ) \0 \n # 001 006 , 004 c a s e 003 . . . 0014000 004 c o n s 004 l i s t 005 e r r o r 0014020 \r s y n t a x - m a t c h ? 004 e 0014040 l s e 004 c a d r 003 c a r \a c l a 0014060 u s e s 003 v a r 005 e l s e 2 005 e 0014100 l s e 1 005 e x p r 2 005 e x p r 1 0014120 003 k e y \v e l s e - c l a u s e 0014140 004 l o o p 006 g e n s y m 004 t 1 9 0014160 0 004 t 1 7 8 004 t 1 7 5 004 t 1 6 9 0014200 \v m a k e - s y n t a x 004 t 1 6 0014220 7 004 t 1 9 5 004 c o n d 003 l e t 005 0014240 q u o t e 004 m e m v 003 c d r 005 c 0014260 d d a r 005 c a d a r 004 c a a r 005 0014300 n u l l ? 004 t 1 8 1 \a c l a u s 0014320 e 2 \a c l a u s e 1 004 e x p r 005 0014340 c d d d r 005 c a d d r 022 p a r s 0014360 e - c a s e - c l a u s e s 004 c 0014400 d d r 006 a p p e n d 021 020 I n t 0014420 e r p r e t e d C o d e 022 \0 017 0014440 023 023 002 \a 027 \a \0 003 037 \n \0 002 032 ( 001 003 0014460 $ 001 025 * 021 022 A n o n y m o u s 0014500 f u n c t i o n 022 \a \a 031 \a 030 \a 0014520 026 \a 025 \a 024 \a 023 \a 021 016 023 023 004 036 \a 002 0014540 \a 005 \a 022 \a 005 \a ) \a 002 \a ( \a ' \a 005 0014560 \a \b \a 005 \a \a \a 005 \a 003 \a 003 \a 003 \a \a 0014600 \a 002 \a + \a 003 \a 002 \a \b \a 002 \a \a \a * 0014620 \a 004 \a 004 \a 004 \a 004 \a 004 004 036 037 201 ^ \0 0014640 016 032 024 \0 004 & \0 001 033 025 026 001 005 022 0014660 325 034 002 & \0 002 035 027 030 005 002 005 022 311 036 0014700 004 036 005 036 006 001 003 036 \a 001 003 004 003 & 0014720 \0 003 036 \b 030 006 030 \a 003 005 022 275 036 \t 0014740 003 003 & \0 004 036 \n 030 \b 030 \t 004 005 022 261 0014760 036 \v 003 003 & \0 005 036 \f 030 \n 030 \v 005 0015000 005 022 245 036 \r 030 \f 036 016 036 017 002 036 020 0015020 001 003 004 003 036 021 030 \r 036 022 030 016 & \0 006 ( 0015040 017 & \0 006 006 004 003 036 023 036 024 036 025 0015060 005 003 036 026 036 027 005 003 036 030 005 003 004 004 0015100 003 004 004 \v 036 031 030 020 030 021 005 030 022 \f 004 0015120 036 032 030 023 030 024 004 030 025 \f 004 036 033 030 026 0015140 030 027 003 030 030 \f 004 036 034 030 031 030 032 002 0015160 030 033 \f 004 036 035 030 034 030 035 001 \v \a \0 002 0015200 \a \0 \a 006 004 005 \a \0 \a & \a % \a $ \a 001 0015220 \0 \a \n \0 002 \a \t \a 020 \0 002 004 004 002 \a 017 0015240 \a 001 \a 016 \a \r \a 001 \a 001 \0 004 004 \a 006 \a 0015260 \f \a \v \a 001 \a 033 \a 032 017 \a 021 022 001 \a 0015300 # 017 024 024 004 \n \a " \a 002 \a 002 \a 003 \a 003 0015320 \a ! \a 002 \a \a 037 \a 036 004 004 037 3 \0 \t 0015340 032 \0 003 022 \n 024 * 033 034 035 025 ! 001 002 036 0015360 004 026 036 005 \0 003 004 005 036 006 036 \a \0 003 0015400 036 \b \0 003 004 004 ! 001 006 036 \t \0 003 003 0015420 \n \0 \a 035 \a 034 021 006 ( t 1 8 1 ) \0 \a 0015440 \0 021 033 d o e s n o t f i t 0015460 ' w i t h ' p a t t e r n 004 004 0015500 \a 006 \a \f \a \v \a 001 \a \0 021 033 d o e s 0015520 n o t f i t ' w i t h ' 0015540 p a t t e r n 002 004 004 002 \a 017 \a 001 \a 0015560 016 \a \r \a 001 \a 001 \a \0 021 033 d o e s 0015600 n o t f i t ' w i t h ' p 0015620 a t t e r n 002 \a \t \a 020 \a \0 021 033 d 0015640 o e s n o t f i t ' w i t 0015660 h ' p a t t e r n \a \n \a \0 021 016 0015700 i n v a l i d s y n t a x 021 004 0015720 t 1 9 5 \0 \a \0 021 002 ( ) \0 \n # 001 006 0015740 \n 022 p a r s e - c a s e - c l a 0015760 u s e s 004 e l s e \a r e v e r s 0016000 e 004 l i s t \t l a s t - p a i r 0016020 004 c a a r 003 e q ? 003 c d r 003 c a 0016040 r \a c l a u s e s 021 020 I n t e 0016060 r p r e t e d C o d e 022 \0 017 023 0016100 023 001 \a \0 003 037 \b \0 001 ( 001 $ \0 025 * 0016120 \a \0 022 001 \a \t 017 024 024 004 \n \a 006 \a 005 \a 0016140 004 \a 003 \a 002 \a \a \a 002 \a \b \a 004 \a 003 003 0016160 037 ( \0 005 032 033 034 \0 003 003 024 004 022 " 035 0016200 036 004 036 005 036 006 \0 003 003 003 036 \a 036 \b 0016220 \0 003 003 \n 036 \t \0 025 \n \a 001 002 \a 001 001 0016240 \f 021 o ( c l a u s e s ) H e l 0016260 p e r r o u t i n e f o r 0016300 c a s e s y n t a x ; R e t 0016320 u r n a l i s t o f t w 0016340 o e l e m e n t s , t h e 0016360 n o r m a l c l a u s e s a 0016400 n d t h e e l s e c l a u 0016420 s e \0 \a \0 021 002 ( ) \0 \n # 001 006 * 002 0016440 d o 004 c o n s 003 . . . 004 l o o p 0016460 004 c a d r 004 l i s t \r s y n t a 0016500 x - m a t c h ? 005 e r r o r 005 n 0016520 u l l ? 004 t 2 0 5 005 b e g i n 003 0016540 c d r \f n e w - b i n d i n g s 0016560 003 c a r \a b i n d i n g 005 c d d 0016600 d r 006 c d a d d r 006 c a a d d r 0016620 004 t e s t 004 b o d y 006 r e s u l 0016640 t 004 s t e p 004 i n i t 003 v a r 003 0016660 m a p 006 a p p e n d 005 e v e r y 0016700 002 < = 005 s t u f f 006 c a d d a r 0016720 004 c d d r 006 l e n g t h 005 c a d 0016740 a r 002 i f 003 l e t 004 c a a r 006 g 0016760 e n s y m 004 t 2 1 1 004 t 2 0 6 004 0017000 t 1 9 6 004 t 2 1 3 \v m a k e - s 0017020 y n t a x 021 020 I n t e r p r e 0017040 t e d C o d e 022 \0 017 023 023 002 \a ) 0017060 \a \0 003 037 \n \0 002 032 ( 001 003 $ 001 025 * 0017100 021 022 A n o n y m o u s f u n c 0017120 t i o n 022 006 \a ( \a ' \a & \a 003 \a 003 0017140 \a % 016 023 023 004 \a 001 \a 006 \a $ \a 006 \a 0017160 005 \a 004 \a 005 \a 021 \a 001 \a 020 \a 001 \a 031 \a 0017200 017 \a 005 \a 001 \a 004 \a \a \a 006 \a 032 \a 004 \a 0017220 030 \a 004 \a 006 \a 001 \a 001 \a 001 \a 001 \a 021 \a 0017240 020 \a 017 \a \a \a \a 004 036 037 201 i \0 022 032 024 0017260 \0 004 & \0 001 033 025 026 001 005 022 202 034 002 0017300 & \0 002 035 027 030 005 002 005 022 v 036 004 030 006 0017320 002 030 \a & \0 003 ( \b & \0 003 003 036 005 0017340 001 003 003 036 006 030 \t 036 \a 001 003 036 \b 030 0017360 \n 036 \t 001 003 004 036 \n 030 \v 036 \v 036 \f 0017400 001 003 036 \r 036 016 002 030 \f & \0 004 ( \r & 0017420 \0 004 004 036 017 001 003 003 004 003 004 004 006 004 0017440 \f 004 036 020 030 016 030 017 002 030 020 \f 004 036 021 0017460 030 021 030 022 001 005 022 231 036 022 ( 023 036 023 0017500 001 003 004 016 233 030 024 022 340 036 024 ( 025 036 025 0017520 001 003 004 & \0 005 036 026 030 026 030 027 005 005 022 0017540 324 036 027 030 030 036 030 005 036 031 036 032 036 033 0017560 001 003 036 034 001 003 004 036 035 001 003 004 004 \n 0017600 036 036 030 031 030 032 005 030 033 \f 004 036 037 030 034 0017620 030 035 001 \v \a \0 001 \a \0 004 005 \a \0 002 003 0017640 \a 027 \a 026 \a 025 \a 002 003 \a 022 \a 024 \a 002 \a 0017660 023 \a 002 \0 \a 003 \a " 017 \a 003 022 001 \a \t 0017700 017 024 024 004 006 \a \b \a 001 \a 005 \a # \a \a 0017720 \v 002 037 \0 005 032 \0 003 022 \n 024 * 033 034 0017740 035 \0 003 036 004 \0 003 004 ! 001 003 036 005 0017760 \0 003 003 \n \0 021 006 ( t 2 0 5 ) \0 \a ! 0020000 \a \n \a \n 017 \a 003 022 001 \a \t 017 024 024 004 0020020 004 \a \b \a 001 \a 035 \a \v 002 037 030 \0 005 032 0020040 \0 003 022 \n 024 * 033 034 \0 003 ! 001 004 035 0020060 \0 003 003 \n \0 021 006 ( t 2 0 5 ) \0 \a \0 0020100 021 033 d o e s n o t f i t ' 0020120 w i t h ' p a t t e r n \a 003 001 0020140 \a \0 004 005 \a \0 002 002 \a 034 \a 002 \a 002 003 \a 0020160 022 \a 024 \a 002 \a 023 \a 002 021 022 A n o n 0020200 y m o u s f u n c t i o n 022 001 0020220 \a 016 017 024 024 002 \a 033 \a 037 003 037 \n \0 004 032 0020240 024 033 \0 003 025 \v 027 002 027 003 021 \t ( b i 0020260 n d i n g ) \0 017 021 022 A n o n y 0020300 m o u s f u n c t i o n 022 001 \a 0020320 016 017 024 024 004 006 \a \b \a 036 \a 005 \a \r \a 004 0020340 \a \r 001 037 035 \0 005 032 033 \0 003 003 022 032 034 0020360 035 \0 003 036 004 \0 003 036 005 \0 003 \v 0020400 \0 * 021 \t ( b i n d i n g ) \0 \0 \a 0020420 \f \a \0 \a \0 021 033 d o e s n o t 0020440 f i t ' w i t h ' p a t t e 0020460 r n \a \f \a \0 021 016 i n v a l i d 0020500 s y n t a x 021 004 t 2 1 3 \0 \a \0 021 0020520 002 ( ) \0 \n # 001 006 021 004 l i s t 005 d 0020540 e l a y 004 c o n s 002 i t 016 n e e 0020560 d s - r u n n i n g ? 004 s e t ! 0020600 006 l a m b d a 003 l e t 004 e x p r 0020620 005 b e g i n 002 i f 004 t 2 1 4 004 t 0020640 2 1 6 \r s y n t a x - m a t c h 0020660 ? 005 e r r o r 004 c a d r \v m a k 0020700 e - s y n t a x 021 020 I n t e r 0020720 p r e t e d C o d e 022 \0 017 023 023 0020740 002 \a 020 \a 001 003 037 \n \0 002 032 ( 001 003 $ 001 0020760 025 * 021 022 A n o n y m o u s f 0021000 u n c t i o n 022 002 \a \f \a \v 016 023 023 0021020 004 020 \a 002 \a \r \a \0 \a \0 \a \0 \a \0 \a 017 0021040 \a \0 \a 002 \a 002 \a 002 \a 002 \a \0 \a \0 \a \0 0021060 \a 016 004 027 037 c \0 024 032 024 \0 004 & \0 001 0021100 033 025 026 001 005 022 Z 034 027 035 036 004 030 005 036 0021120 005 030 006 030 \a 036 006 001 003 005 004 036 \a 030 \b 0021140 030 \t 004 004 036 \b 030 \n 036 \t 030 \v 036 \n 030 \f 0021160 036 \v 036 \f 030 \r 030 016 036 \r 030 017 030 020 036 016 0021200 030 021 030 022 030 023 005 005 005 030 024 004 004 004 004 \v 0021220 036 017 030 025 030 026 001 \v \a 001 001 \a 001 002 \a 0021240 001 \a \b \a \a \a 003 \a 006 \0 \a 004 016 \a 006 \0 0021260 021 \t A p r o m i s e \a \n \a 004 \a 0021300 \t 003 \a 005 \a 003 001 \a 003 \a 005 \a 004 017 001 \a 0021320 003 \a 001 021 016 i n v a l i d s y n 0021340 t a x 021 004 t 2 1 6 \0 \a 001 021 002 ( ) 0021360 \0 \n # 001 006 \r \v c o n s - s t r e 0021400 a m 004 c o n s 004 l i s t \r s y n 0021420 t a x - m a t c h ? 005 c a d d r 0021440 004 c a d r 005 d e l a y 002 t l 002 h 0021460 d 005 e r r o r 004 t 2 1 7 004 t 2 1 0021500 8 \v m a k e - s y n t a x 021 020 0021520 I n t e r p r e t e d C o d e 0021540 022 \0 017 023 023 002 \a \f \a \0 003 037 \n \0 002 032 0021560 ( 001 003 $ 001 025 * 021 022 A n o n y m 0021600 o u s f u n c t i o n 022 002 \a \v 0021620 \a \n 016 023 023 004 \a \a 001 \a 003 \a 002 \a 005 \a 0021640 002 \a 004 \a \t 004 \b 037 , \0 \a 032 024 \0 004 0021660 & \0 001 033 025 026 001 005 022 # 034 027 035 001 0021700 003 036 004 030 005 036 005 001 003 004 \v 036 006 030 006 0021720 030 \a 001 \v \a \0 001 \a \0 003 \a \0 \a \b \a 0021740 \a \a 001 \a 006 \a \0 021 016 i n v a l i d 0021760 s y n t a x 021 004 t 2 1 8 \0 \a \0 0022000 021 002 ( ) \0 \n 0022006