%!PS-Adobe-2.0 %%Creator: dvips 5.47 Copyright 1986-91 Radical Eye Software %%Title: ifsnecc.dvi %%Pages: 15 1 %%BoundingBox: 0 0 612 792 %%EndComments %%BeginProcSet: tex.pro /TeXDict 200 dict def TeXDict begin /N /def load def /B{bind def}N /S /exch load def /X{S N}B /TR /translate load N /isls false N /vsize 10 N /@rigin{ isls{[0 1 -1 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale Resolution VResolution vsize neg mul TR matrix currentmatrix dup dup 4 get round 4 exch put dup dup 5 get round 5 exch put setmatrix}N /@letter{/vsize 10 N}B /@landscape{/isls true N /vsize -1 N}B /@a4{/vsize 10.6929133858 N}B /@a3{ /vsize 15.5531 N}B /@ledger{/vsize 16 N}B /@legal{/vsize 13 N}B /@manualfeed{ statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{/sf 1 N /fntrx FMat N df-tail} B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{128 ch-data dup length 3 sub get sub}B /ch-yoff{ ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{ch-image} imagemask restore}B /D{/cc X dup type /stringtype ne{]}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin 0 0 moveto}N /eop{clear SI restore showpage userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook known{start-hook}if /VResolution X /Resolution X 1000 div /DVImag X /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for}N /p /show load N /RMat[1 0 0 -1 0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V statusdict begin /product where{pop product dup length 7 ge{0 7 getinterval(Display)eq}{pop false}ifelse}{false}ifelse end{{gsave TR -.1 -.1 TR 1 1 scale rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1 -.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /a{ moveto}B /delta 0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{ S p tail}B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w }B /q{p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p a}B /bos{/SS save N}B /eos{clear SS restore}B end %%EndProcSet TeXDict begin 1095 300 300 @start /Fa 2 56 df<00000004000000000200000000020000 00000100000000008000000000400000000020FFFFFFFFFCFFFFFFFFFC00000000200000000040 0000000080000000010000000002000000000200000000040026107D922D>33 D<C0C0C0C0C0C0C0E0E0C0C0C0C0C0C0C003107D9200>55 D E /Fb 2 104 df<001E0033007700760070007000E000E00FFE00E000E001C001C001C001C001C001C0038003 80038003800380070007006600E600CC007800101C7D9512>102 D<01F3030F060F0C071C0E38 0E380E380E301C301C301C383C18780FB8003800386070E070C1E07F8010147E8D12>I E /Fc 1 51 df<1F0021C040E080E0C070E070407000F000E000E001C001800300060004000810 101020303FE07FE0FFE00C157E9412>50 D E /Fd 7 122 df<00FFFFE000000F007800000F00 1C00000F000E00000F000700001E000700001E000380001E000380001E000380003C000380003C 000380003C000380003C000380007800078000780007800078000780007800078000F0000F0000 F0000F0000F0000E0000F0001E0001E0001C0001E0003C0001E000380001E000700003C000E000 03C001C00003C003800003C007000007803C0000FFFFF00000211F7E9E26>68 D<00FFFFFF000F000E000F0006000F0002000F0002001E0002001E0002001E0002001E0002003C 0004003C0400003C0400003C04000078080000781800007FF8000078180000F0100000F0100000 F0100000F0100001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C00000 07C00000FFFE0000201F7E9E1D>70 D<00FF803FF0000F800780000F800200000BC00200000BC0 02000013C004000011E004000011E004000011E004000020F008000020F008000020F808000020 780800004078100000403C100000403C100000403C100000801E200000801E200000801E200000 800F200001000F400001000F4000010007C000010007C000020007800002000380000200038000 06000380000F00010000FFE0010000241F7E9E25>78 D<00007C0000CE00019E00039E00030C00 0700000700000700000700000E00000E00000E0000FFF0000E00000E00001C00001C00001C0000 1C00001C0000380000380000380000380000380000700000700000700000700000700000E00000 E00000E00000E00000C00001C000318000798000F300006200003C000017297E9F16>102 D<001E3000713800E0F001C0700380700780700700E00F00E00F00E00F00E01E01C01E01C01E01 C01E01C01E03801E03800E07800E0B8006170001E700000700000700000E00000E00300E00781C 00F038006070003FC000151D809316>I<03C1C00C62201034701038F02038F020386040700000 700000700000700000E00000E00000E00000E02061C040F1C040F1C080E2C080446300383C0014 147E931A>120 D<0F00601180702180E021C0E041C0E04380E08381C00701C00701C00701C00E 03800E03800E03800E03800E07000C07000C07000E0F00061E0003EE00000E00000E00001C0078 180078380070700060600021C0001F0000141D7E9316>I E /Fe 36 94 df<4010E038F078E038E038E038E038E038E038E038E038E038E03860300D0E7B9C18>34 D<007000F001E003C007800F001E001C00380038007000700070007000E000E000E000E000E000 E000E000E0007000700070007000380038001C001E000F00078003C001F000F000700C24799F18 >40 D<6000F00078003C001E000F000780038001C001C000E000E000E000E00070007000700070 007000700070007000E000E000E000E001C001C0038007800F001E003C007800F00060000C247C 9F18>I<01F00007FC000FFE001F1F001C07003803807803C07001C07001C0E000E0E000E0E000 E0E000E0E000E0E000E0E000E0E000E0E000E0F001E07001C07001C07803C03803801C07001F1F 000FFE0007FC0001F000131C7E9B18>48 D<01800380038007800F803F80FF80FB804380038003 80038003800380038003800380038003800380038003800380038003807FFCFFFE7FFC0F1C7B9B 18>I<03F0000FFE003FFF007C0F807003C0E001C0F000E0F000E06000E00000E00000E00001C0 0001C00003C0000780000F00001E00003C0000780000F00001E00007C0000F80001E00E03C00E0 7FFFE0FFFFE07FFFE0131C7E9B18>I<07F8001FFE003FFF007807807803C07801C03001C00001 C00003C0000380000F0003FF0003FE0003FF000007800003C00001C00000E00000E00000E0F000 E0F000E0F001C0F003C07C07803FFF001FFE0003F800131C7E9B18>I<001F00003F0000770000 770000E70001E70001C7000387000787000707000E07001E07003C0700380700780700F00700FF FFF8FFFFF8FFFFF8000700000700000700000700000700000700007FF000FFF8007FF0151C7F9B 18>I<1FFF803FFF803FFF803800003800003800003800003800003800003800003800003BF800 3FFE003FFF003C07801803C00001C00000E00000E06000E0F000E0F000E0E001C07003C07C0F80 3FFF001FFC0003F000131C7E9B18>I<007E0001FF0007FF800F83C01E03C01C03C03801803800 00700000700000E1F800E7FE00FFFF00FE0780F803C0F001C0F000E0E000E0F000E07000E07000 E07000E03801C03C03C01E07800FFF0007FE0001F800131C7E9B18>I<3078FCFC783000000000 000000003078FCFC78300614779318>58 D<0FF0003FFC007FFF00700F00F00380F00380600780 000F00003E00007C0001F00001E00003C00003C00003C00003C00003C000038000000000000000 00000000000000000003800007C00007C00007C000038000111C7D9B18>63 D<00700000F80000F80000D80000D80001DC0001DC0001DC00018C00038E00038E00038E00038E 000306000707000707000707000707000FFF800FFF800FFF800E03800E03801C01C01C01C07F07 F0FF8FF87F07F0151C7F9B18>65 D<FFFC00FFFF00FFFF801C03C01C01C01C00E01C00E01C00E0 1C00E01C01E01C01C01C07C01FFF801FFF001FFFC01C03C01C00E01C00F01C00701C00701C0070 1C00701C00F01C00E01C03E0FFFFC0FFFF80FFFE00141C7F9B18>I<00F8E003FEE007FFE00F07 E01E03E03C01E03800E07000E07000E0700000E00000E00000E00000E00000E00000E00000E000 00E000007000007000E07000E03800E03C00E01E01C00F07C007FF8003FE0000F800131C7E9B18 >I<7FF800FFFE007FFF001C0F801C03C01C03C01C01E01C00E01C00E01C00F01C00701C00701C 00701C00701C00701C00701C00701C00701C00F01C00E01C00E01C01E01C01C01C03C01C0F807F FF00FFFE007FF800141C7F9B18>I<FFFFF0FFFFF0FFFFF01C00701C00701C00701C00701C0000 1C00001C0E001C0E001C0E001FFE001FFE001FFE001C0E001C0E001C0E001C00001C00001C0038 1C00381C00381C00381C0038FFFFF8FFFFF8FFFFF8151C7F9B18>I<FFFFE0FFFFE0FFFFE01C00 E01C00E01C00E01C00E01C00001C00001C1C001C1C001C1C001FFC001FFC001FFC001C1C001C1C 001C1C001C00001C00001C00001C00001C00001C00001C0000FFC000FFC000FFC000131C7E9B18 >I<01F1C003FDC00FFFC01F0FC01C03C03803C03801C07001C07001C0700000E00000E00000E0 0000E00000E00000E00FF0E01FF0E00FF07001C07001C07003C03803C03803C01C07C01F0FC00F FFC003FDC001F1C0141C7E9B18>I<7F07F0FF8FF87F07F01C01C01C01C01C01C01C01C01C01C0 1C01C01C01C01C01C01C01C01FFFC01FFFC01FFFC01C01C01C01C01C01C01C01C01C01C01C01C0 1C01C01C01C01C01C01C01C07F07F0FF8FF87F07F0151C7F9B18>I<7FFF00FFFF807FFF0001C0 0001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C0 0001C00001C00001C00001C00001C00001C00001C00001C0007FFF00FFFF807FFF00111C7D9B18 >I<7FE000FFE0007FE0000E00000E00000E00000E00000E00000E00000E00000E00000E00000E 00000E00000E00000E00000E00000E00000E00000E00000E00700E00700E00700E00700E00707F FFF0FFFFF07FFFF0141C7F9B18>76 D<FC01F8FE03F8FE03F83B06E03B06E03B06E03B06E03B8E E03B8EE0398CE0398CE039DCE039DCE039DCE038D8E038D8E038F8E03870E03870E03800E03800 E03800E03800E03800E03800E0FE03F8FE03F8FE03F8151C7F9B18>I<7E07F0FF0FF87F07F01D 81C01D81C01D81C01DC1C01CC1C01CC1C01CE1C01CE1C01CE1C01C61C01C71C01C71C01C31C01C 39C01C39C01C39C01C19C01C19C01C1DC01C0DC01C0DC01C0DC07F07C0FF87C07F03C0151C7F9B 18>I<0FF8003FFE007FFF00780F00700700F00780E00380E00380E00380E00380E00380E00380 E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380F00780700700780F00 7FFF003FFE000FF800111C7D9B18>I<FFFE00FFFF80FFFFC01C03C01C01E01C00E01C00701C00 701C00701C00701C00701C00E01C01E01C03C01FFFC01FFF801FFE001C00001C00001C00001C00 001C00001C00001C00001C0000FF8000FF8000FF8000141C7F9B18>I<0FF8003FFE007FFF0078 0F00700700F00780E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E0 0380E00380E00380E00380E1E380E1E380F0E78070F700787F007FFF003FFE000FFC00001C0000 1E00000E00000F0000070000070011227D9B18>I<7FF800FFFE007FFF001C0F801C03801C03C0 1C01C01C01C01C01C01C03C01C03801C0F801FFF001FFE001FFE001C0F001C07001C03801C0380 1C03801C03801C03801C039C1C039C1C039C7F01F8FF81F87F00F0161C7F9B18>I<03F3801FFF 803FFF807C0F80700780E00380E00380E00380E000007000007800003F00001FF00007FE0000FF 00000F800003C00001C00000E00000E06000E0E000E0E001E0F001C0F80780FFFF80FFFE00E7F8 00131C7E9B18>I<7FFFF8FFFFF8FFFFF8E07038E07038E07038E0703800700000700000700000 700000700000700000700000700000700000700000700000700000700000700000700000700000 700000700007FF0007FF0007FF00151C7F9B18>I<FF83FEFF83FEFF83FE1C00701C00701C0070 1C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C00701C0070 1C00701C00701C00700E00E00F01E00783C003FF8001FF00007C00171C809B18>I<FF07F8FF07 F8FF07F81C01C01C01C01C01C01C01C00E03800E03800E03800E03800F07800707000707000707 00070700038E00038E00038E00038E00018C0001DC0001DC0001DC0000D80000F80000F8000070 00151C7F9B18>I<FE03F8FE03F8FE03F87000707000707000703800E03800E03800E03800E038 00E038F8E038F8E039DCE039DCE019DCC019DCC019DCC0198CC01D8DC01D8DC01D8DC01D8DC00D 8D800D05800F07800F07800E0380151C7F9B18>I<FF07F8FF07F8FF07F81C01C01E03C00E0380 0F0780070700070700038E00038E0001DC0001DC0001DC0000F80000F800007000007000007000 00700000700000700000700000700000700001FC0003FE0001FC00151C7F9B18>89 D<FFF8FFF8FFF8E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000 E000E000E000E000E000E000E000E000E000E000E000E000E000E000FFF8FFF8FFF80D24779F18 >91 D<FFF8FFF8FFF8003800380038003800380038003800380038003800380038003800380038 003800380038003800380038003800380038003800380038003800380038FFF8FFF8FFF80D247F 9F18>93 D E /Ff 44 122 df<1C3C3C3C3C040408081020204080060E7D840E>44 D<7FF0FFE07FE00C037D8A10>I<000200020006000E003C00DC031C001C003800380038003800 7000700070007000E000E000E000E001C001C001C001C003800380038003800780FFF80F1E7B9D 17>49 D<001F800060E00080700100300200380420380420380410380420700460700380600000 E00001C000030000FE00001C00000600000700000780000780000780300780780780780780F00F 00800F00401E00401C0040380020E0001F8000151F7C9D17>51 D<070F1F1F0E00000000000000 00000070F8F8F0E008147B930E>58 D<00000200000006000000060000000E0000001E0000001E 0000003F0000002F0000004F0000004F0000008F0000010F0000010F0000020F0000020F000004 0F00000C0F0000080F0000100F0000100F0000200F80003FFF800040078000C007800080078001 000780010007800200078002000780060007801E000F80FF807FF81D207E9F22>65 D<01FFFFC0001E00F0001E0078001E0038001E003C003C003C003C003C003C003C003C003C0078 007800780078007800F0007801E000F0078000FFFE0000F00F8000F003C001E001C001E001E001 E001E001E001E003C001E003C001E003C001E003C001C0078003C00780078007800F0007801E00 0F007800FFFFE0001E1F7D9E20>I<0000FE0200078186001C004C0038003C0060003C00C0001C 01C0001803800018070000180F0000181E0000101E0000103C0000003C00000078000000780000 007800000078000000F0000000F0000000F0000000F0000000F000008070000080700000807000 01003800010038000200180004000C001800060020000381C00000FE00001F217A9F21>I<01FF FF80001E00E0001E0070001E0038001E001C003C001C003C000E003C000E003C000E0078000E00 78000E0078000E0078000E00F0001E00F0001E00F0001E00F0001E01E0003C01E0003C01E0003C 01E0007803C0007003C0007003C000E003C001C0078001C00780038007800E0007801C000F0070 00FFFFC0001F1F7D9E22>I<01FFFFFE001E001C001E000C001E0004001E0004003C0004003C00 04003C0004003C00040078080800780800007808000078180000F0300000FFF00000F0300000F0 300001E0200001E0200001E0200001E0001003C0002003C0002003C0004003C000400780008007 80018007800100078007000F001F00FFFFFE001F1F7D9E1F>I<01FFFFFC001E0038001E001800 1E0008001E0008003C0008003C0008003C0008003C000800780010007808000078080000780800 00F0100000F0300000FFF00000F0300001E0200001E0200001E0200001E0200003C0000003C000 0003C0000003C00000078000000780000007800000078000000F800000FFF800001E1F7D9E1E> I<0000FC040007030C001C00980030007800E0007801C000380380003003800030070000300E00 00301E0000201E0000203C0000003C00000078000000780000007800000078000000F0000000F0 00FFF0F0000780F0000780F0000F0070000F0070000F0070000F0070001E0038001E0018003E00 1C002E000E00CC000383040000FC00001E217A9F23>I<01FFF0001F00001E00001E00001E0000 3C00003C00003C00003C0000780000780000780000780000F00000F00000F00000F00001E00001 E00001E00001E00003C00003C00003C00003C0000780000780000780000780000F8000FFF80014 1F7D9E12>73 D<001FFF0000F80000F00000F00000F00001E00001E00001E00001E00003C00003 C00003C00003C0000780000780000780000780000F00000F00000F00000F00001E00001E00301E 00781E00F83C00F83C00F0780080700040E00021C0001F000018207D9E18>I<01FFF800001F00 00001E0000001E0000001E0000003C0000003C0000003C0000003C000000780000007800000078 00000078000000F0000000F0000000F0000000F0000001E0000001E0000001E0000001E0008003 C0010003C0010003C0030003C00200078006000780060007800C0007801C000F007800FFFFF800 191F7D9E1D>76 D<01FE00007FC0001E0000FC00001E0000F80000170001780000170001780000 270002F00000270004F00000270004F00000270008F00000470009E00000470011E00000470021 E00000470021E00000870043C00000838043C00000838083C00000838083C00001038107800001 03820780000103820780000103840780000203840F00000203880F00000203900F00000203900F 00000401E01E00000401E01E00000401C01E00000C01801E00001C01803E0000FF8103FFC0002A 1F7D9E29>I<01FF007FE0001F000F00001F0004000017800400001780040000278008000023C0 08000023C008000023C008000041E010000041E010000041F010000040F010000080F020000080 7820000080782000008078200001003C400001003C400001003C400001001E400002001E800002 001E800002000F800002000F800004000F0000040007000004000700000C000700001C00020000 FF80020000231F7D9E22>I<01FFFF80001E00E0001E0070001E0038001E003C003C003C003C00 3C003C003C003C003C0078007800780078007800F0007800E000F003C000F00F0000FFFC0000F0 000001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C000000780000007 80000007800000078000000F800000FFF000001E1F7D9E1F>80 D<0007E040001C18C000300580 0060038000C0038001C00180018001000380010003800100038001000380000003C0000003C000 0003F8000001FF800001FFE000007FF000001FF0000001F8000000780000007800000038000000 380020003800200038002000300060007000600060006000E0007000C000E8038000C606000081 F800001A217D9F1A>83 D<0FFFFFF01E0780E0180780201007802020078020200F0020600F0020 400F0020400F0020801E0040001E0000001E0000001E0000003C0000003C0000003C0000003C00 000078000000780000007800000078000000F0000000F0000000F0000000F0000001E0000001E0 000001E0000001E0000003E00000FFFF00001C1F789E21>I<00F1800389C00707800E03801C03 803C0380380700780700780700780700F00E00F00E00F00E00F00E20F01C40F01C40703C40705C 40308C800F070013147C9317>97 D<07803F8007000700070007000E000E000E000E001C001C00 1CF01D0C3A0E3C0E380F380F700F700F700F700FE01EE01EE01EE01CE03CE038607060E031C01F 0010207B9F15>I<007E0001C1000300800E07801E07801C07003C0200780000780000780000F0 0000F00000F00000F00000F0000070010070020030040018380007C00011147C9315>I<000078 0003F80000700000700000700000700000E00000E00000E00000E00001C00001C000F1C00389C0 0707800E03801C03803C0380380700780700780700780700F00E00F00E00F00E00F00E20F01C40 F01C40703C40705C40308C800F070015207C9F17>I<007C01C207010E011C013C013802780C7B F07C00F000F000F000F0007000700170023804183807C010147C9315>I<00007800019C00033C 00033C000718000700000700000E00000E00000E00000E00000E0001FFE0001C00001C00001C00 001C0000380000380000380000380000380000700000700000700000700000700000700000E000 00E00000E00000E00000C00001C00001C0000180003180007B0000F300006600003C0000162982 9F0E>I<003C6000E27001C1E00380E00700E00F00E00E01C01E01C01E01C01E01C03C03803C03 803C03803C03803C07003C07001C0F001C17000C2E0003CE00000E00000E00001C00001C00301C 00783800F0700060E0003F8000141D7E9315>I<01E0000FE00001C00001C00001C00001C00003 8000038000038000038000070000070000071E000763000E81800F01C00E01C00E01C01C03801C 03801C03801C0380380700380700380700380E10700E20700C20701C20700C40E00CC060070014 207D9F17>I<00C001E001E001C000000000000000000000000000000E00330023004380430047 0087000E000E000E001C001C001C003840388030807080310033001C000B1F7C9E0E>I<000180 0003C00003C0000380000000000000000000000000000000000000000000003C00004600008700 008700010700010700020E00000E00000E00000E00001C00001C00001C00001C00003800003800 00380000380000700000700000700000700000E00000E00030E00079C000F180006300003C0000 1228829E0E>I<01E0000FE00001C00001C00001C00001C0000380000380000380000380000700 000700000703C00704200E08E00E11E00E21E00E40C01C80001D00001E00001FC00038E0003870 00387000383840707080707080707080703100E03100601E0013207D9F15>I<03C01FC0038003 800380038007000700070007000E000E000E000E001C001C001C001C0038003800380038007000 700070007100E200E200E200E200640038000A207C9F0C>I<1C0F80F0002630C318004740640C 004780680E004700700E004700700E008E00E01C000E00E01C000E00E01C000E00E01C001C01C0 38001C01C038001C01C038001C01C0708038038071003803806100380380E10038038062007007 006600300300380021147C9325>I<1C0F802630C04740604780604700704700708E00E00E00E0 0E00E00E00E01C01C01C01C01C01C01C03843803883803083807083803107003303001C016147C 931A>I<007C0001C3000301800E01C01E01C01C01E03C01E07801E07801E07801E0F003C0F003 C0F003C0F00780F00700700F00700E0030180018700007C00013147C9317>I<01C1E002621804 741C04781C04701E04701E08E01E00E01E00E01E00E01E01C03C01C03C01C03C01C03803807803 80700380E003C1C0072380071E000700000700000E00000E00000E00000E00001C00001C0000FF C000171D809317>I<1C1E002661004783804787804707804703008E00000E00000E00000E0000 1C00001C00001C00001C000038000038000038000038000070000030000011147C9313>114 D<00FC030206010C030C070C060C000F800FF007F803FC003E000E700EF00CF00CE00840102060 1F8010147D9313>I<018001C0038003800380038007000700FFF007000E000E000E000E001C00 1C001C001C003800380038003820704070407080708031001E000C1C7C9B0F>I<0E00C03300E0 2301C04381C04301C04701C08703800E03800E03800E03801C07001C07001C07001C07101C0E20 180E20180E201C1E200C264007C38014147C9318>I<0E03803307802307C04383C04301C04700 C08700800E00800E00800E00801C01001C01001C01001C02001C02001C04001C04001C08000E30 0003C00012147C9315>I<0E00C1C03300E3C02301C3E04381C1E04301C0E04701C06087038040 0E0380400E0380400E0380401C0700801C0700801C0700801C0701001C0701001C0602001C0F02 000C0F04000E13080003E1F0001B147C931E>I<0383800CC4401068E01071E02071E02070C040 E00000E00000E00000E00001C00001C00001C00001C040638080F38080F38100E5810084C60078 780013147D9315>I<0E00C03300E02301C04381C04301C04701C08703800E03800E03800E0380 1C07001C07001C07001C07001C0E00180E00180E001C1E000C3C0007DC00001C00001C00003800 F03800F07000E06000C0C0004380003E0000131D7C9316>I E /Fg 84 125 df<001F83E000F06E3001C078780380F8780300F0300700700007007000070070000700700007 0070000700700007007000FFFFFF80070070000700700007007000070070000700700007007000 070070000700700007007000070070000700700007007000070070000700700007007000070070 0007007000070070007FE3FF001D20809F1B>11 D<003F0000E0C001C0C00381E00701E00701E0 070000070000070000070000070000070000FFFFE00700E00700E00700E00700E00700E00700E0 0700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E07FC3FE 1720809F19>I<003FE000E0E001C1E00381E00700E00700E00700E00700E00700E00700E00700 E00700E0FFFFE00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700 E00700E00700E00700E00700E00700E00700E00700E07FE7FE1720809F19>I<001F81F80000F0 4F040001C07C06000380F80F000300F00F000700F00F0007007000000700700000070070000007 0070000007007000000700700000FFFFFFFF000700700700070070070007007007000700700700 070070070007007007000700700700070070070007007007000700700700070070070007007007 000700700700070070070007007007000700700700070070070007007007007FE3FE3FF0242080 9F26>I<001F81FF0000F06F070001C07C0F000380F80F000300F0070007007007000700700700 07007007000700700700070070070007007007000700700700FFFFFFFF00070070070007007007 000700700700070070070007007007000700700700070070070007007007000700700700070070 070007007007000700700700070070070007007007000700700700070070070007007007000700 7007007FE3FE3FF02420809F26>I<70F8F8F8F8F8F8F870707070707070707070202020202000 0000000070F8F8F87005217CA00D>33 D<7038F87CFC7EFC7E743A040204020402080408041008 1008201040200F0E7E9F17>I<70F8FCFC74040404080810102040060E7C9F0D>39 D<0020004000800100020006000C000C00180018003000300030007000600060006000E000E000 E000E000E000E000E000E000E000E000E000E0006000600060007000300030003000180018000C 000C000600020001000080004000200B2E7DA112>I<800040002000100008000C000600060003 00030001800180018001C000C000C000C000E000E000E000E000E000E000E000E000E000E000E0 00E000C000C000C001C001800180018003000300060006000C00080010002000400080000B2E7D A112>I<70F8FCFC74040404080810102040060E7C840D>44 D<FFC0FFC00A027F8A0F>I<70F8F8 F87005057C840D>I<000100030003000600060006000C000C000C001800180018003000300030 00600060006000C000C000C00180018001800300030003000600060006000C000C000C00180018 001800300030003000600060006000C000C000C000102D7DA117>I<03F0000E1C001C0E001806 00380700700380700380700380700380F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003 C0F003C0F003C0F003C0F003C0F003C07003807003807003807807803807001806001C0E000E1C 0003F000121F7E9D17>I<018003800F80F3800380038003800380038003800380038003800380 0380038003800380038003800380038003800380038003800380038007C0FFFE0F1E7C9D17>I< 03F0000C1C00100E00200700400780800780F007C0F803C0F803C0F803C02007C00007C0000780 000780000F00000E00001C0000380000700000600000C0000180000300000600400C0040180040 1000803FFF807FFF80FFFF80121E7E9D17>I<03F0000C1C00100E00200F00780F807807807807 80380F80000F80000F00000F00000E00001C0000380003F000003C00000E00000F000007800007 800007C02007C0F807C0F807C0F807C0F00780400780400F00200E001C3C0003F000121F7E9D17 >I<000600000600000E00000E00001E00002E00002E00004E00008E00008E00010E00020E0002 0E00040E00080E00080E00100E00200E00200E00400E00C00E00FFFFF0000E00000E00000E0000 0E00000E00000E00000E0000FFE0141E7F9D17>I<1803001FFE001FFC001FF8001FE000100000 10000010000010000010000010000011F000161C00180E001007001007800003800003800003C0 0003C00003C07003C0F003C0F003C0E00380400380400700200600100E000C380003E000121F7E 9D17>I<007C000182000701000E03800C07801C0780380300380000780000700000700000F1F0 00F21C00F40600F80700F80380F80380F003C0F003C0F003C0F003C0F003C07003C07003C07003 803803803807001807000C0E00061C0001F000121F7E9D17>I<4000007FFFC07FFF807FFF8040 010080020080020080040000080000080000100000200000200000400000400000C00000C00001 C00001800003800003800003800003800007800007800007800007800007800007800007800003 0000121F7D9D17>I<03F0000C0C00100600300300200180600180600180600180700180780300 3E03003F06001FC8000FF00003F80007FC000C7E00103F00300F806003804001C0C001C0C000C0 C000C0C000C0C000806001802001001002000C0C0003F000121F7E9D17>I<03F0000E18001C0C 00380600380700700700700380F00380F00380F003C0F003C0F003C0F003C0F003C07007C07007 C03807C0180BC00E13C003E3C0000380000380000380000700300700780600780E00700C002018 001070000FC000121F7E9D17>I<70F8F8F8700000000000000000000070F8F8F87005147C930D> I<70F8F8F8700000000000000000000070F0F8F878080808101010202040051D7C930D>I<7FFF FFE0FFFFFFF00000000000000000000000000000000000000000000000000000000000000000FF FFFFF07FFFFFE01C0C7D9023>61 D<0FC0307040384038E03CF03CF03C603C0038007000E000C0 01800180010003000200020002000200020002000000000000000000000007000F800F800F8007 000E207D9F15>63 D<000100000003800000038000000380000007C0000007C0000007C0000009 E0000009E0000009E0000010F0000010F0000010F00000207800002078000020780000403C0000 403C0000403C0000801E0000801E0000FFFE0001000F0001000F0001000F000200078002000780 02000780040003C00E0003C01F0007E0FFC03FFE1F207F9F22>65 D<FFFFE0000F80380007801E 0007801F0007800F0007800F8007800F8007800F8007800F8007800F8007800F0007801F000780 1E0007803C0007FFF00007803C0007801E0007800F0007800F8007800780078007C0078007C007 8007C0078007C0078007C00780078007800F8007800F0007801F000F803C00FFFFF0001A1F7E9E 20>I<000FC040007030C001C009C0038005C0070003C00E0001C01E0000C01C0000C03C0000C0 7C0000407C00004078000040F8000000F8000000F8000000F8000000F8000000F8000000F80000 00F8000000F8000000780000007C0000407C0000403C0000401C0000401E0000800E0000800700 01000380020001C0040000703800000FC0001A217D9F21>I<FFFFE0000F803C0007801E000780 070007800380078003C0078001E0078001E0078001F0078000F0078000F0078000F8078000F807 8000F8078000F8078000F8078000F8078000F8078000F8078000F8078000F0078000F0078000F0 078001E0078001E0078003C0078003800780070007800E000F803C00FFFFE0001D1F7E9E23>I< FFFFFF000F800F0007800300078003000780010007800180078000800780008007800080078080 800780800007808000078080000781800007FF8000078180000780800007808000078080000780 8000078000200780002007800020078000400780004007800040078000C0078000C0078001800F 800F80FFFFFF801B1F7E9E1F>I<FFFFFF000F800F000780030007800300078001000780018007 800080078000800780008007800080078080000780800007808000078080000781800007FF8000 078180000780800007808000078080000780800007800000078000000780000007800000078000 000780000007800000078000000FC00000FFFE0000191F7E9E1E>I<000FE0200078186000E004 E0038002E0070001E00F0000E01E0000601E0000603C0000603C0000207C00002078000020F800 0000F8000000F8000000F8000000F8000000F8000000F8000000F8007FFCF80003E0780001E07C 0001E03C0001E03C0001E01E0001E01E0001E00F0001E0070001E0038002E000E0046000781820 000FE0001E217D9F24>I<FFF8FFF80F800F8007800F0007800F0007800F0007800F0007800F00 07800F0007800F0007800F0007800F0007800F0007800F0007800F0007FFFF0007800F0007800F 0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F000780 0F0007800F0007800F000F800F80FFF8FFF81D1F7E9E22>I<FFFC0FC007800780078007800780 078007800780078007800780078007800780078007800780078007800780078007800780078007 80078007800FC0FFFC0E1F7F9E10>I<0FFFC0007C00003C00003C00003C00003C00003C00003C 00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C 00003C00003C00203C00F83C00F83C00F83C00F0380040780040700030E0000F800012207E9E17 >I<FFFC0FFC0FC003E00780018007800100078002000780040007800800078010000780200007 80400007808000078100000783000007878000078F80000793C0000791E00007A1E00007C0F000 0780F0000780780007803C0007803C0007801E0007801E0007800F000780078007800780078007 C00FC007E0FFFC3FFC1E1F7E9E23>I<FFFE000FC0000780000780000780000780000780000780 000780000780000780000780000780000780000780000780000780000780000780000780000780 0207800207800207800207800607800407800407800C07801C0F807CFFFFFC171F7E9E1C>I<FF 80001FF80F80001F800780001F0005C0002F0005C0002F0005C0002F0004E0004F0004E0004F00 0470008F000470008F000470008F000438010F000438010F000438010F00041C020F00041C020F 00041C020F00040E040F00040E040F00040E040F000407080F000407080F000407080F00040390 0F000403900F000401E00F000401E00F000401E00F000E00C00F001F00C01F80FFE0C1FFF8251F 7E9E2A>I<FF803FF807C007C007C0038005E0010005E0010004F001000478010004780100043C 0100043C0100041E0100040F0100040F010004078100040781000403C1000401E1000401E10004 00F1000400F1000400790004003D0004003D0004001F0004001F0004000F000400070004000700 0E0003001F000300FFE001001D1F7E9E22>I<001F800000F0F00001C0380007801E000F000F00 0E0007001E0007803C0003C03C0003C07C0003E0780001E0780001E0F80001F0F80001F0F80001 F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0780001E07C0003E07C0003E03C00 03C03C0003C01E0007800E0007000F000F0007801E0001C0380000F0F000001F80001C217D9F23 >I<FFFFE0000F80780007801C0007801E0007800F0007800F8007800F8007800F8007800F8007 800F8007800F8007800F0007801E0007801C000780780007FFE000078000000780000007800000 078000000780000007800000078000000780000007800000078000000780000007800000078000 000FC00000FFFC0000191F7E9E1F>I<001F800000F0F00001C0380007801E000F000F000E0007 001E0007803C0003C03C0003C07C0003E07C0003E0780001E0F80001F0F80001F0F80001F0F800 01F0F80001F0F80001F0F80001F0F80001F0F80001F0780001E0780001E07C0003E03C0003C03C 0F03C01E1087800E2047000F204F0007A03E0001E0380000F0F010001FB0100000301000003830 0000387000003FF000001FE000001FE000000FC0000007801C297D9F23>I<FFFF80000F80F000 0780780007803C0007801E0007801E0007801F0007801F0007801F0007801F0007801E0007801E 0007803C00078078000780F00007FF80000781C0000780E0000780F00007807000078078000780 78000780780007807C0007807C0007807C0007807C0407807E0407803E040FC01E08FFFC0F1000 0003E01E207E9E21>I<07E0800C1980100780300380600180600180E00180E00080E00080E000 80F00000F000007800007F00003FF0001FFC000FFE0003FF00001F800007800003C00003C00001 C08001C08001C08001C08001C0C00180C00380E00300F00600CE0C0081F80012217D9F19>I<7F FFFFE0780F01E0600F0060400F0020400F0020C00F0030800F0010800F0010800F0010800F0010 000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000001F 800007FFFE001C1F7E9E21>I<FFFC3FF80FC007C0078003800780010007800100078001000780 010007800100078001000780010007800100078001000780010007800100078001000780010007 800100078001000780010007800100078001000780010007800100078001000380020003800200 01C0020001C0040000E008000070180000382000000FC0001D207E9E22>I<FFF003FE1F8000F8 0F0000600F800060078000400780004003C0008003C0008003C0008001E0010001E0010001F001 0000F0020000F0020000F806000078040000780400003C0800003C0800003C0800001E1000001E 1000001F3000000F2000000F20000007C0000007C0000007C00000038000000380000003800000 0100001F207F9E22>I<FFF07FF81FF01F800FC007C00F00078003800F00078001000F0007C001 00078007C00200078007C00200078007C0020003C009E0040003C009E0040003C009E0040003E0 10F00C0001E010F0080001E010F0080001F02078080000F02078100000F02078100000F0403C10 000078403C20000078403C20000078C03E2000003C801E4000003C801E4000003C801E4000001F 000F8000001F000F8000001F000F8000001E00078000000E00070000000E00070000000C000300 000004000200002C207F9E2F>I<FFF003FF1F8000F80F8000600780004007C0004003E0008001 E0008001F0010000F0030000F80200007C0400003C0400003E0800001E0800001F1000000FB000 0007A0000007C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0 000003C0000003C0000003C0000007C000007FFE00201F7F9E22>89 D<7FFFF87C00F87000F060 01E04001E0C003C0C003C0800780800F80800F00001E00001E00003C00003C0000780000F80000 F00001E00001E00003C00403C0040780040F80040F000C1E000C1E00083C00183C0018780038F8 01F8FFFFF8161F7D9E1C>I<FEFEC0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0 C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0FEFE072D7CA10D>I<0804100820102010402040208040 80408040B85CFC7EFC7E7C3E381C0F0E7B9F17>I<FEFE06060606060606060606060606060606 06060606060606060606060606060606060606060606060606FEFE072D7FA10D>I<1FE0003030 00781800781C00300E00000E00000E00000E0000FE00078E001E0E00380E00780E00F00E10F00E 10F00E10F01E10781E103867200F83C014147E9317>97 D<0E0000FE00000E00000E00000E0000 0E00000E00000E00000E00000E00000E00000E00000E3E000EC3800F01C00F00E00E00E00E0070 0E00700E00780E00780E00780E00780E00780E00780E00700E00700E00E00F00E00D01C00CC300 083E0015207F9F19>I<03F80E0C1C1E381E380C70007000F000F000F000F000F000F000700070 00380138011C020E0C03F010147E9314>I<000380003F80000380000380000380000380000380 00038000038000038000038000038003E380061B801C0780380380380380700380700380F00380 F00380F00380F00380F00380F003807003807003803803803807801C07800E1B8003E3F815207E 9F19>I<03F0000E1C001C0E00380700380700700700700380F00380F00380FFFF80F00000F000 00F000007000007000003800801800800C010007060001F80011147F9314>I<007C00C6018F03 8F07060700070007000700070007000700FFF00700070007000700070007000700070007000700 070007000700070007000700070007007FF01020809F0E>I<0000E003E3300E3C301C1C30380E 00780F00780F00780F00780F00780F00380E001C1C001E380033E0002000002000003000003000 003FFE001FFF800FFFC03001E0600070C00030C00030C00030C000306000603000C01C038003FC 00141F7F9417>I<0E0000FE00000E00000E00000E00000E00000E00000E00000E00000E00000E 00000E00000E3E000E43000E81800F01C00F01C00E01C00E01C00E01C00E01C00E01C00E01C00E 01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0FFE7FC16207F9F19>I<1C001E003E00 1E001C000000000000000000000000000E007E000E000E000E000E000E000E000E000E000E000E 000E000E000E000E000E000E000E00FFC00A1F809E0C>I<00E001F001F001F000E00000000000 00000000000000007007F000F00070007000700070007000700070007000700070007000700070 007000700070007000700070007000706070F060F0C061803F000C28829E0E>I<0E0000FE0000 0E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E0FF00E03C00E0300 0E02000E04000E08000E10000E30000E70000EF8000F38000E1C000E1E000E0E000E07000E0780 0E03800E03C00E03E0FFCFF815207F9F18>I<0E00FE000E000E000E000E000E000E000E000E00 0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E 000E00FFE00B20809F0C>I<0E1F01F000FE618618000E81C81C000F00F00E000F00F00E000E00 E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E 00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E00FFE7FE7FE023147F9326 >I<0E3E00FE43000E81800F01C00F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E 01C00E01C00E01C00E01C00E01C00E01C00E01C0FFE7FC16147F9319>I<01F800070E001C0380 3801C03801C07000E07000E0F000F0F000F0F000F0F000F0F000F0F000F07000E07000E03801C0 3801C01C0380070E0001F80014147F9317>I<0E3E00FEC3800F01C00F00E00E00E00E00F00E00 700E00780E00780E00780E00780E00780E00780E00700E00F00E00E00F01E00F01C00EC3000E3E 000E00000E00000E00000E00000E00000E00000E00000E0000FFE000151D7F9319>I<03E08006 19801C05803C0780380380780380700380F00380F00380F00380F00380F00380F0038070038078 03803803803807801C0B800E138003E38000038000038000038000038000038000038000038000 0380003FF8151D7E9318>I<0E78FE8C0F1E0F1E0F0C0E000E000E000E000E000E000E000E000E 000E000E000E000E000E00FFE00F147F9312>I<1F9030704030C010C010C010E00078007F803F E00FF00070803880188018C018C018E030D0608F800D147E9312>I<020002000200060006000E 000E003E00FFF80E000E000E000E000E000E000E000E000E000E000E000E080E080E080E080E08 0610031001E00D1C7F9B12>I<0E01C0FE1FC00E01C00E01C00E01C00E01C00E01C00E01C00E01 C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E03C00603C0030DC001F1FC16147F9319 >I<FF83F81E01E01C00C00E00800E00800E008007010007010003820003820003820001C40001 C40001EC0000E80000E80000700000700000700000200015147F9318>I<FF9FE1FC3C0780701C 0300601C0380200E0380400E0380400E03C0400707C0800704C0800704E0800388610003887100 03C8730001D0320001D03A0000F03C0000E01C0000E01C0000601800004008001E147F9321>I< 7FC3FC0F01E00701C007018003810001C20000E40000EC00007800003800003C00007C00004E00 0087000107000303800201C00601E01E01E0FF07FE1714809318>I<FF83F81E01E01C00C00E00 800E00800E008007010007010003820003820003820001C40001C40001EC0000E80000E8000070 00007000007000002000002000004000004000004000F08000F08000F100006200003C0000151D 7F9318>I<3FFF380E200E201C40384078407000E001E001C00380078007010E011E011C033802 7006700EFFFE10147F9314>I<FFFFFC1601808C17>I<FFFFFFFFFFF02C01808C2D>I E /Fh 45 122 df<000FF01FC000007FF8FFF00000F81FE0780001E03F80F80003E07F80F80007 C07F00F80007C07F00F80007C03F00700007C01F00000007C01F00000007C01F00000007C01F03 FC00FFFFFFFFFC00FFFFFFFFFC0007C01F007C0007C01F007C0007C01F007C0007C01F007C0007 C01F007C0007C01F007C0007C01F007C0007C01F007C0007C01F007C0007C01F007C0007C01F00 7C0007C01F007C0007C01F007C0007C01F007C0007C01F007C0007C01F007C003FF8FFE3FF803F F8FFE3FF802920809F2C>14 D<FFF0FFF0FFF0FFF00C047F8B11>45 D<387CFEFEFE7C3807077C 860F>I<00E00001E0000FE000FFE000F3E00003E00003E00003E00003E00003E00003E00003E0 0003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E0 0003E00003E000FFFF80FFFF80111D7C9C1A>49 D<01FC0007FF000F07801E03C01C01E03C01E0 3C01E03E01E03F01E03FC3C01FE3801FFF000FFE0007FF8007FFC01FFFE03C3FF0780FF07803F8 F001F8F000F8F00078F00078F000707800707C00E03E03C00FFF8003FC00151D7E9C1A>56 D<387CFEFEFE7C38000000000000387CFEFEFE7C3807147C930F>58 D<0000E000000000E00000 0001F000000001F000000001F000000003F800000003F800000006FC00000006FC0000000EFE00 00000C7E0000000C7E000000183F000000183F000000303F800000301F800000701FC00000600F C00000600FC00000C007E00000FFFFE00001FFFFF000018003F000018003F000030001F8000300 01F800060001FC00060000FC000E0000FE00FFE00FFFE0FFE00FFFE0231F7E9E28>65 D<FFFFFE00FFFFFFC007C007E007C003F007C001F807C001FC07C001FC07C001FC07C001FC07C0 01FC07C001F807C003F807C007F007C00FE007FFFF8007FFFFC007C003F007C001F807C001FC07 C000FC07C000FE07C000FE07C000FE07C000FE07C000FE07C000FC07C001FC07C003F807C007F0 FFFFFFE0FFFFFF001F1F7E9E25>I<0007FC02003FFF0E00FE03DE03F000FE07E0003E0FC0001E 1F80001E3F00000E3F00000E7F0000067E0000067E000006FE000000FE000000FE000000FE0000 00FE000000FE000000FE0000007E0000007E0000067F0000063F0000063F00000C1F80000C0FC0 001807E0003803F0007000FE01C0003FFF800007FC001F1F7D9E26>I<FFFFFE0000FFFFFFC000 07E007F00007E001F80007E000FC0007E0007E0007E0003F0007E0003F0007E0001F8007E0001F 8007E0001F8007E0001FC007E0001FC007E0001FC007E0001FC007E0001FC007E0001FC007E000 1FC007E0001FC007E0001FC007E0001F8007E0001F8007E0001F8007E0003F0007E0003F0007E0 007E0007E000FC0007E001F80007E007F000FFFFFFC000FFFFFE0000221F7E9E28>I<FFFFFFE0 FFFFFFE007E007E007E001E007E000E007E0006007E0007007E0003007E0003007E0603007E060 3007E0600007E0E00007E1E00007FFE00007FFE00007E1E00007E0E00007E0600007E0600C07E0 600C07E0000C07E0001807E0001807E0001807E0003807E0007807E000F807E003F0FFFFFFF0FF FFFFF01E1F7E9E22>I<FFFFFFE0FFFFFFE007E007E007E001E007E000E007E0006007E0007007 E0003007E0003007E0603007E0603007E0600007E0E00007E1E00007FFE00007FFE00007E1E000 07E0E00007E0600007E0600007E0600007E0000007E0000007E0000007E0000007E0000007E000 0007E0000007E00000FFFF8000FFFF80001C1F7E9E21>I<FFFFFFFF07E007E007E007E007E007 E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E0 07E007E0FFFFFFFF101F7E9E14>73 D<FFFF8000FFFF800007E0000007E0000007E0000007E000 0007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0 000007E0000007E0000007E0000007E000C007E000C007E000C007E001C007E001C007E001C007 E0038007E0038007E00F8007E01F80FFFFFF80FFFFFF801A1F7E9E1F>76 D<FFE000003FF8FFF000007FF807F000007F0006F80000DF0006F80000DF0006F80000DF00067C 00019F00067C00019F00063E00031F00063E00031F00061F00061F00061F00061F00060F800C1F 00060F800C1F000607C0181F000607C0181F000607C0181F000603E0301F000603E0301F000601 F0601F000601F0601F000600F8C01F000600F8C01F0006007D801F0006007D801F0006003F001F 0006003F001F0006003F001F0006001E001F00FFF01E03FFF8FFF00C03FFF82D1F7E9E32>I<FF E000FFF0FFF000FFF007F000060007F800060006FC000600067E000600063F000600063F800600 061F800600060FC006000607E006000603F006000601F806000601FC06000600FC060006007E06 0006003F060006001F860006001FC60006000FE600060007E600060003F600060001FE00060000 FE00060000FE000600007E000600003E000600001E000600000E00FFF0000600FFF0000600241F 7E9E29>I<001FF80000FFFF0001F81F8007E007E00FC003F01F8001F81F0000F83F0000FC7F00 00FE7E00007E7E00007EFE00007FFE00007FFE00007FFE00007FFE00007FFE00007FFE00007FFE 00007FFE00007F7E00007E7F0000FE7F0000FE3F0000FC3F8001FC1F8001F80FC003F007E007E0 01F81F8000FFFF00001FF800201F7D9E27>I<FFFFFE00FFFFFF8007E00FE007E003F007E001F8 07E001F807E001FC07E001FC07E001FC07E001FC07E001FC07E001F807E001F807E003F007E00F E007FFFF8007FFFE0007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0 000007E0000007E0000007E0000007E00000FFFF0000FFFF00001E1F7E9E24>I<03FC080FFF38 1E03F83800F8700078700038F00038F00018F00018F80000FC00007FC0007FFE003FFF801FFFE0 0FFFF007FFF000FFF80007F80000FC00007C00003CC0003CC0003CC0003CE00038E00078F80070 FE01E0E7FFC081FF00161F7D9E1D>83 D<7FFFFFFC7FFFFFFC7C07E07C7007E01C6007E00C6007 E00CE007E00EC007E006C007E006C007E006C007E0060007E0000007E0000007E0000007E00000 07E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E000 0007E0000007E0000007E00003FFFFC003FFFFC01F1E7E9D24>I<FFFF01FFE0FFFF01FFE007E0 000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007 E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C00 07E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0003E000180001F00018 0001F000300000F8006000007E03C000001FFF80000003FC0000231F7E9E28>I<07FC001FFF00 3F0F803F07C03F03E03F03E00C03E00003E0007FE007FBE01F03E03C03E07C03E0F803E0F803E0 F803E0FC05E07E0DE03FF8FE0FE07E17147F9319>97 D<FF0000FF00001F00001F00001F00001F 00001F00001F00001F00001F00001F00001F00001F1FC01F7FF01FE0F81F807C1F007E1F003E1F 003E1F003F1F003F1F003F1F003F1F003F1F003F1F003E1F003E1F007C1F807C1EC1F81C7FE018 1F8018207E9F1D>I<01FE0007FF801F0FC03E0FC03E0FC07C0FC07C0300FC0000FC0000FC0000 FC0000FC0000FC00007C00007E00003E00603F00C01F81C007FF0001FC0013147E9317>I<0007 F80007F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F801F8F80FFE F81F83F83E01F87E00F87C00F87C00F8FC00F8FC00F8FC00F8FC00F8FC00F8FC00F87C00F87C00 F87E00F83E01F81F07F80FFEFF03F8FF18207E9F1D>I<01FE0007FF800F83C01E01E03E00F07C 00F07C00F8FC00F8FFFFF8FFFFF8FC0000FC0000FC00007C00007C00003E00181E00180F807007 FFE000FF8015147F9318>I<001F8000FFC001F3E003E7E003C7E007C7E007C3C007C00007C000 07C00007C00007C000FFFC00FFFC0007C00007C00007C00007C00007C00007C00007C00007C000 07C00007C00007C00007C00007C00007C00007C00007C0003FFC003FFC0013207F9F10>I<01FC 3C07FFFE0F079E1E03DE3E03E03E03E03E03E03E03E03E03E01E03C00F07800FFF0009FC001800 001800001C00001FFF800FFFF007FFF81FFFFC3C007C70003EF0001EF0001EF0001E78003C7800 3C3F01F80FFFE001FF00171E7F931A>I<FF0000FF00001F00001F00001F00001F00001F00001F 00001F00001F00001F00001F00001F0FC01F3FE01F61F01FC0F81F80F81F00F81F00F81F00F81F 00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F8FFE3FFFFE3FF18207D9F 1D>I<1C003E007F007F007F003E001C00000000000000000000000000FF00FF001F001F001F00 1F001F001F001F001F001F001F001F001F001F001F001F001F00FFE0FFE00B217EA00E>I<0038 007C00FE00FE00FE007C003800000000000000000000000001FE01FE003E003E003E003E003E00 3E003E003E003E003E003E003E003E003E003E003E003E003E003E003E303E783EFC3CFC7C7878 3FF01FC00F2A83A010>I<FF0000FF00001F00001F00001F00001F00001F00001F00001F00001F 00001F00001F00001F01FE1F01FE1F00F01F00C01F03801F07001F0C001F18001F7C001FFC001F 9E001F0F001E0F801E07C01E03C01E01E01E01F01E00F8FFC3FFFFC3FF18207E9F1C>I<FF00FF 001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00 1F001F001F001F001F001F001F001F001F00FFE0FFE00B207E9F0E>I<FE0FE03F80FE1FF07FC0 1E70F9C3E01E407D01F01E807E01F01F807E01F01F007C01F01F007C01F01F007C01F01F007C01 F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C 01F0FFE3FF8FFEFFE3FF8FFE27147D932C>I<FE0FC0FE3FE01E61F01EC0F81E80F81F00F81F00 F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F8FFE3FFFFE3 FF18147D931D>I<01FF0007FFC01F83F03E00F83E00F87C007C7C007CFC007EFC007EFC007EFC 007EFC007EFC007E7C007C7C007C3E00F83E00F81F83F007FFC001FF0017147F931A>I<FF1FC0 FF7FF01FE1F81F80FC1F007E1F007E1F003E1F003F1F003F1F003F1F003F1F003F1F003F1F003E 1F007E1F007C1F80FC1FC1F81F7FE01F1F801F00001F00001F00001F00001F00001F00001F0000 FFE000FFE000181D7E931D>I<FE3E00FE7F801ECFC01E8FC01E8FC01F8FC01F03001F00001F00 001F00001F00001F00001F00001F00001F00001F00001F00001F0000FFF000FFF00012147E9316 >114 D<0FE63FFE701E600EE006E006F800FFC07FF83FFC1FFE03FE001FC007C007E007F006F8 1EFFFCC7F010147E9315>I<01800180018003800380038007800F803F80FFFCFFFC0F800F800F 800F800F800F800F800F800F800F800F860F860F860F860F8607CC03F801F00F1D7F9C14>I<FF 07F8FF07F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F 00F81F00F81F01F81F01F80F06F807FCFF03F8FF18147D931D>I<FFE07F80FFE07F801F001C00 0F8018000F80180007C0300007C0300003E0600003E0600001F0C00001F0C00001F9C00000F980 0000FF8000007F0000007F0000003E0000003E0000001C0000001C000019147F931C>I<FFE7FE 1FE0FFE7FE1FE01F00F003001F00F803000F80F806000F80F8060007C1BC0C0007C1BC0C0007C1 BE0C0003E31E180003E31E180001F60F300001F60F300001F60FB00000FC07E00000FC07E00000 7803C000007803C000007803C000003001800023147F9326>I<FFE1FF00FFE1FF000F80700007 C0E00007E0C00003E1800001F3800000FF0000007E0000003E0000003F0000007F8000006F8000 00C7C0000183E0000381F0000701F8000E00FC00FF81FF80FF81FF8019147F931C>I<FFE07F80 FFE07F801F001C000F8018000F80180007C0300007C0300003E0600003E0600001F0C00001F0C0 0001F9C00000F9800000FF8000007F0000007F0000003E0000003E0000001C0000001C00000018 00000018000078300000FC300000FC600000C0E00000E1C000007F8000001E000000191D7F931C >I E end %%EndProlog %%BeginSetup %%Feature: *Resolution 300 TeXDict begin %%EndSetup %%Page: 1 1 bop 717 45 a Fh(Bey)o(ond)17 b(Programming:)194 100 y(A)g(Tw)o(o-Summer)f (Computer)h(Science)i(Institute)f(for)f(Secondary)h(T)l(eac)o(hers)841 209 y Fg(Brian)e(Harv)o(ey)643 264 y(Univ)o(ersit)o(y)g(of)f(California,)g (Berk)o(eley)888 414 y(Abstract)91 564 y(1992)k(marks)h(the)h(fourth)f (summer)h(of)f(the)h(Institute)g(for)f(Secondary)h(Mathematics)g(and)f (Computer)0 659 y(Science)15 b(Education)g(\(IFSMA)o(CSE\),)d(an)h(NSF-sp)q (onsored)h(program)f(for)g(high)h(sc)o(ho)q(ol)g(teac)o(hers)f(held)i(at)e (Ken)o(t)0 755 y(State)20 b(Univ)o(ersit)o(y)l(.)36 b(The)21 b(program)e(is)i(divided)h(in)o(to)f(separate)f(strands)g(for)f(mathematics)h (and)h(computer)0 850 y(science;)16 b(this)g(pap)q(er)g(describ)q(es)g(the)g (computer)f(science)i(strand.)91 945 y(In)12 b(its)g(\014rst)g(three)g(y)o (ears,)f(IFSMA)o(CSE)h(has)f(serv)o(ed)h(ab)q(out)g(240)f(participan)o(ts,)i (including)h(90)d(in)i(computer)0 1041 y(science.)21 b(It)15 b(has,)g(therefore,)f(had)h(a)f(visible)j(impact)e(in)h(Ohio)g(and)f(the)g (neigh)o(b)q(oring)h(states,)d(esp)q(ecially)18 b(since)0 1136 y(one)13 b(comp)q(onen)o(t)h(of)f(the)g(Institute)h(is)g(an)f(In)o(terv)o (ening)h(Y)l(ear)g(Pro)s(ject)e(in)i(whic)o(h)g(participan)o(ts)g(bring)g (the)f(ideas)0 1232 y(of)i(the)g(Institute)g(bac)o(k)g(to)g(their)g (colleagues)i(through)d(inservice)j(w)o(orkshops,)d(lo)q(cal)i(curriculum)h (design,)f(and)0 1327 y(demonstration)f(teac)o(hing.)20 b(\(P)o(articipan)o (ts)15 b(attend)g(the)g(Institute)h(during)g(t)o(w)o(o)e(consecutiv)o(e)i (summers.\))91 1423 y(IFSMA)o(CSE)g(is)h(b)q(oth)f(tec)o(hnically)i(and)f(p)q (edagogically)h(inno)o(v)m(ativ)o(e.)23 b(Its)17 b(curriculum)h(go)q(es)e (far)f(b)q(ey)o(ond)0 1518 y(what)20 b(is)i(usually)g(exp)q(ected)h(of)d (high)i(sc)o(ho)q(ol)g(teac)o(hers)e(\(or)h(their)g(studen)o(ts\);)i(in)f (computer)f(science,)j(par-)0 1614 y(ticipan)o(ts)18 b(study)g(b)q(oth)g (functional)h(programming)e(\(in)h(Logo\))f(and)h(pro)q(cedural)h (programming)e(\(in)h(P)o(ascal\))0 1709 y(paradigms,)c(and)g(suc)o(h)g(adv)m (anced)h(computer)f(science)h(topics)f(as)g(automata)e(theory)i(and)g (compiler)h(construc-)0 1805 y(tion.)30 b(Our)18 b(high)i(exp)q(ectations)f (are)f(made)g(realistic)i(b)o(y)e(the)h(hea)o(vy)f(use)h(of)f(exp)q(erien)o (tial)i(and)f(co)q(op)q(erativ)o(e)0 1900 y(learning)j(tec)o(hniques.)36 b(P)o(articipan)o(ts)20 b(learn)h(b)o(y)g(exp)q(erimen)o(t,)h(rather)e(than)g (b)o(y)g(listening)i(to)e(lectures.)36 b(In)0 1995 y(the)20 b(mathematics)f(strands)g(as)g(w)o(ell)i(as)e(in)h(computer)g(science,)i(w)o (e)d(emphasize)i(the)f(use)f(of)h(programming)0 2091 y(languages)15 b(as)g(op)q(en-ended)i(exp)q(erimen)o(tal)g(media,)e(rather)g(than)g(more)g (sp)q(eci\014c)i(\\coursew)o(are.")91 2186 y(In)f(addition)i(to)d(describing) j(w)o(a)o(ys)d(in)h(whic)o(h)h(IFSMA)o(CSE)f(has)g(b)q(een)h(successful,)g (this)f(pap)q(er)h(discusses)0 2282 y(t)o(w)o(o)j(ongoing)g(problems.)38 b(One)21 b(is)h(the)f(di\016cult)o(y)h(that)e(participan)o(ts)h(ha)o(v)o(e)g (with)g(the)g(idea)g(of)g(functional)0 2377 y(ob)s(jects;)12 b(another)f(is)h(the)g(tenacit)o(y)f(with)h(whic)o(h)h(man)o(y)e(participan)o (ts')h(abstract)e(educational)j(theories)f(prev)o(en)o(t)0 2473 y(them)j(from)g(observing)g(their)h(o)o(wn)f(learning)h(exp)q(eriences)h (clearly)l(.)964 2779 y(1)p eop %%Page: 2 2 bop 717 45 a Fh(Bey)o(ond)17 b(Programming:)194 100 y(A)g(Tw)o(o-Summer)f (Computer)h(Science)i(Institute)f(for)f(Secondary)h(T)l(eac)o(hers)91 237 y Fg(The)c(Institute)h(for)e(Secondary)h(Mathematics)g(and)g(Computer)f (Science)j(Education)f(\(IFSMA)o(CSE\))e(is)h(a)0 333 y(summer)f(program)e (for)h(high)i(sc)o(ho)q(ol)f(teac)o(hers)f(that)g(has)g(b)q(een)i(funded)g(b) o(y)e(the)h(National)g(Science)i(F)l(oundation)0 428 y(for)f(three)i(groups)e (of)h(participan)o(ts)g(o)o(v)o(er)g(four)f(summers.)20 b(\(Eac)o(h)15 b(participan)o(t)g(attends)g(the)g(program)f(during)0 524 y(t)o(w)o(o)i (consecutiv)o(e)i(summers.\))26 b(It)17 b(is)h(held)g(at)f(Ken)o(t)g(State)g (Univ)o(ersit)o(y)l(,)i(in)f(Ken)o(t,)f(Ohio.)27 b(P)o(articipan)o(ts)17 b(ha)o(v)o(e)0 619 y(b)q(een)i(c)o(hosen)f(mainly)g(from)f(Ohio)i(and)e(its)h (neigh)o(b)q(oring)h(states,)e(although)h(a)f(few)h(ha)o(v)o(e)f(come)h(from) e(as)i(far)0 715 y(a)o(w)o(a)o(y)13 b(as)i(Alask)m(a)g(and)g(P)o(ago)f(P)o (ago.)k(The)d(Institute's)g(am)o(bitious)g(and)g(inno)o(v)m(ativ)o(e)h (program)e(has)h(attracted)e(a)0 810 y(w)o(ell-kno)o(wn,)h(in)o(ternational)g (facult)o(y)f(that)f(includes)k(high)e(sc)o(ho)q(ol)f(teac)o(hers)g(as)g(w)o (ell)h(as)e(univ)o(ersit)o(y)i(professors.)91 905 y(IFSMA)o(CSE)21 b(Directors)f(Ed)i(Dubinsky)g(\(Purdue)f(Univ)o(ersit)o(y\))g(and)h(Olaf)f (Stac)o(k)o(elb)q(erg)h(\(Ken)o(t)e(State)0 1001 y(Univ)o(ersit)o(y\))d(b)q (egan)f(planning)i(for)e(the)g(Institute)h(in)g(1986)e(and)i(organized)g(a)f (planning)i(conference)f(in)g(July)l(,)0 1096 y(1987.)h(The)d(\014rst)f (group)g(of)g(participan)o(ts)h(b)q(egan)g(attending)g(the)f(Institute)h(in)h (the)e(summer)g(of)g(1989.)19 b(Here)14 b(is)0 1192 y(ho)o(w)h(one)g(funding) h(prop)q(osal)g(describ)q(ed)h(the)e(needs)h(that)f(IFSMA)o(CSE)g(w)o(as)f (designed)j(to)d(meet:)200 1313 y Fh(New)j(sophistication)k(in)d(the)g (curriculum.)j Fg(The)15 b(traditional)i(sub)s(ject)e(matter)f(of)h(sec-)109 1385 y(ondary)h(mathematics)h(has)f(follo)o(w)o(ed)h(a)g(narro)o(w)e(path)i (leading)h(to)e(the)h(calculus.)26 b(Not)16 b(only)h(has)109 1458 y(computer)c(science)h(raised)f(new)f(in)o(terest)h(in)g(some)g (classical)h(mathematical)e(topics)h(not)f(curren)o(tly)109 1531 y(in)k(the)g(curriculum,)h(but)e(other)g(areas)g(within)i(mathematics)e (\(discrete)h(mathematics,)f(abstract)109 1604 y(algebra,)f(statistics,)h (fractal)f(geometry\))f(ha)o(v)o(e)h(risen)i(from)d(obscurit)o(y)i(to)f(new)h (imp)q(ortance.)20 b(Sec-)109 1676 y(ondary)15 b(teac)o(hers)g(are)g(often)g (un)o(trained)h(in)g(these)f(areas.)200 1776 y Fh(New)e(metho)q(ds)h(of)f (teac)o(hing.)20 b Fg(Organizations)12 b(suc)o(h)g(as)f(the)h(National)g (Council)h(of)f(T)l(eac)o(h-)109 1849 y(ers)g(of)f(Mathematics)h(\(NCTM\))f (and)h(the)g(Mathematical)g(Asso)q(ciation)g(of)g(America)g(\(MAA\))f(ha)o(v) o(e)109 1922 y(concluded)16 b(that)e(the)g(traditional)h(approac)o(h)f(to)g (p)q(edagogy)g(in)h(mathematics)f(has)g(had)g(to)q(o)g(m)o(uc)o(h)109 1995 y(emphasis)22 b(on)g(memorization)g(of)f(facts)g(and)h(algorithms,)h (and)f(not)f(enough)h(of)f(the)h(\015a)o(v)o(or)e(of)109 2067 y(ho)o(w)c(mathematics)g(is)h(done)g(and)g(ho)o(w)f(it)g(is)h(used.)25 b(IFSMA)o(CSE)16 b(emphasizes)i(learner-cen)o(tered)109 2140 y(activities)f(rather)d(than)h(lectures)h(as)f(the)g(primary)h(st)o(yle)f(of) g(p)q(edagogy)l(.)200 2240 y Fh(New)24 b(uses)g(of)h(tec)o(hnology)l(.)39 b Fg(Computers)21 b(and)h(graphing)g(calculators)g(are)f(b)q(ecoming)109 2313 y(widely)g(a)o(v)m(ailable)f(in)g(sc)o(ho)q(ols.)32 b(T)l(eac)o(hers)19 b(require)h(training)g(in)f(these)h(tec)o(hnologies,)g(including)109 2385 y(general-purp)q(ose)12 b(soft)o(w)o(are)c(suc)o(h)j(as)f(spreadsheets,) h(soft)o(w)o(are)d(pac)o(k)m(ages)j(designed)g(sp)q(eci\014cally)i(for)109 2458 y(education,)h(and)g(new)g(programming)f(languages)h(designed)h(for)e (use)h(in)g(mathematics)f(education.)91 2575 y(Eac)o(h)f(participan)o(t)i (attends)e(IFSMA)o(CSE)h(for)f(t)o(w)o(o)f(consecutiv)o(e)j(summer)e (sessions,)i(eac)o(h)e(of)h(whic)o(h)g(is)g(six)0 2670 y(w)o(eeks)f(long.)20 b(The)12 b(academic)h(da)o(y)g(includes)h(four)e(90-min)o(ute)h(p)q(erio)q (ds.)20 b(T)o(ypically)l(,)15 b(a)d(participan)o(t)h(sp)q(ends)g(t)o(w)o(o) 964 2779 y(2)p eop %%Page: 3 3 bop 0 45 a Fg(of)14 b(those)h(p)q(erio)q(ds)h(in)g(formal)e(class)i (meetings,)f(while)h(the)f(other)f(t)o(w)o(o)g(p)q(erio)q(ds)i(are)f(a)o(v)m (ailable)h(for)e(w)o(ork)g(in)i(the)0 141 y(computer)g(labs.)22 b(\(W)l(e)15 b(use)i(sev)o(eral)e(labs,)i(some)e(con)o(taining)i(net)o(w)o (ork)o(ed)d(Apple)k(Macin)o(tosh)d(computers)h(and)0 236 y(the)e(others)f (using)i(net)o(w)o(ork)o(ed)d(IBM)i(PS/2)g(computers.\))19 b(Ev)o(enings)14 b(are)f(for)g(reading,)i(recreation,)f(additional)0 332 y(lab)i(time,)f(and)g(sc)o(heduled)i(guest)e(sp)q(eak)o(ers)g(and)h (similar)g(ev)o(en)o(ts.)91 431 y(The)f(division)h(of)e(the)h(da)o(y)f(b)q (et)o(w)o(een)g(formal)g(class)h(meetings)g(and)g(op)q(en)g(lab)g(times)g(ma) o(y)e(b)q(e)j(misleading,)0 526 y(b)q(ecause)h(ev)o(en)f(during)h(formal)f (classes)g(w)o(e)g(try)g(to)f(dev)o(ote)h(as)f(m)o(uc)o(h)h(time)h(as)e(p)q (ossible)j(to)e(collab)q(orativ)o(e)g(lab)0 622 y(w)o(ork)j(rather)h(than)h (to)e(lectures)j(or)e(demonstrations.)35 b(The)20 b(di\013erence)i(is)f(that) f(during)h(the)g(formal)f(class)0 717 y(sessions)d(all)g(mem)o(b)q(ers)f(of)g (a)g(class)h(are)f(presen)o(t)g(at)g(the)g(same)g(time,)h(along)f(with)h(a)f (facult)o(y)g(mem)o(b)q(er.)24 b(\(This)0 813 y(ideal)15 b(of)e(lab-based)i (classw)o(ork)f(is)g(not)f(p)q(erfectly)i(met.)k(A)14 b(few)g(of)f(the)h (IFSMA)o(CSE)f(classes)i(ha)o(v)o(e)e(relied)i(more)0 908 y(hea)o(vily)k(on)f (lectures)h(than)e(w)o(e'd)h(lik)o(e,)h(and)f(ev)o(en)h(in)f(the)g(most)f (exp)q(erien)o(tial)j(class)f(there)f(is)g(an)g(o)q(ccasional)0 1004 y(summary)i(lecture.)36 b(But)20 b(w)o(e)h(try)e(to)h(in)o(tro)q(duce)h (new)g(concepts)g(through)f(\\guided)h(disco)o(v)o(ery")f(exercises,)0 1099 y(sa)o(ving)15 b(the)g(lectures)h(for)f Ff(after)20 b Fg(the)c(exploration.\))91 1198 y(The)f(participan)o(ts)h(are)e(divided)k(in) o(to)d(mathematics)g(and)g(computer)g(science)h(strands.)k(In)15 b(the)h(\014rst)e(t)o(w)o(o)0 1293 y(IFSMA)o(CSE)f(classes,)h(there)f(w)o (ere)g(t)o(w)o(o)f(mathematics)i(strands,)e(one)i(fo)q(cusing)g(on)f(new)h (topics)g(in)g(mathemat-)0 1389 y(ics,)h(and)g(the)f(other)h(on)f(the)h(use)g (of)f(computer)g(tec)o(hnology)h(in)h(learning)f(mathematics.)20 b(These)15 b(w)o(ere)f(merged)0 1484 y(for)f(the)h(third)h(class,)f(starting) f(in)i(1991,)e(b)o(y)g(com)o(bining)j(courses)d(from)h(the)g(t)o(w)o(o)e (curricula.)21 b(The)14 b(IFSMA)o(CSE)0 1580 y(computer)g(science)i (curriculum)g(has)f(main)o(tained)g(the)f(same)g(general)h(structure)f(for)g (all)h(classes,)g(although)f(of)0 1675 y(course)h(some)g(of)g(the)g(details)h (ha)o(v)o(e)f(c)o(hanged.)91 1774 y(I)h(w)o(as)e(part)h(of)g(the)h(design)g (group)f(for)g(the)h(computer)f(science)i(strand)e(at)g(the)g(1987)g (planning)i(meeting,)0 1870 y(and)e(ha)o(v)o(e)g(taugh)o(t)f(ab)q(out)g(half) i(of)e(the)h(courses)g(in)h(that)e(strand)h(at)f(the)h(Institute.)20 b(In)c(1990)e(I)h(w)o(as)f(app)q(oin)o(ted)0 1965 y(an)h(asso)q(ciate)g (director)h(of)f(IFSMA)o(CSE.)0 2094 y Fh(The)j(Computer)f(Science)h(Strand) 91 2193 y Fg(Tw)o(o)13 b(o)o(v)o(erall)i(p)q(oin)o(ts)g(of)e(view)i(can)g(b)q (e)g(distinguished)i(in)e(computer)f(science)i(education)f([Harv)o(ey)l(,)f (1991].)0 2288 y(The)h(mainstream)f Ff(softwar)n(e)i(engine)n(ering)h Fg(approac)o(h)d(is)i(exempli\014ed)h(b)o(y)e(the)g(Computer)f(Science)j(Adv) m(anced)0 2384 y(Placemen)o(t)22 b(exam,)g(whic)o(h)g(emphasizes)h(sequen)o (tial,)h(pro)q(cedural)e(programming)f(metho)q(dology)h(and)f(top-)0 2479 y(do)o(wn)16 b(design.)25 b(Courses)16 b(follo)o(wing)i(this)f(approac)o (h)f(are)g(t)o(ypically)i(taugh)o(t)e(using)h(P)o(ascal)f(or)g(Mo)q(dula-2.) 25 b(An)0 2575 y(alternativ)o(e)16 b(view,)g(using)h Ff(symb)n(olic)f(pr)n(o) n(gr)n(amming)j Fg(ideas,)e(w)o(as)e(pioneered)i(at)e(the)h(Massac)o(h)o (usetts)e(Institute)0 2670 y(of)21 b(T)l(ec)o(hnology)h([Ab)q(elson)g(and)f (Sussman,)i(1985])c(and)j(emphasizes)g(functional)h(programming)d(st)o(yle)i (and)964 2779 y(3)p eop %%Page: 4 4 bop 0 45 a Fg(in)o(teractiv)o(e)18 b(dev)o(elopmen)o(t.)26 b(Courses)17 b(using)h(the)f(second)g(approac)o(h)g(are)g(often)g(taugh)o(t)f (in)i(Sc)o(heme)g(or)e(some)0 141 y(other)f(dialect)h(of)f(Lisp.)91 236 y(In)k(designing)i(the)e(IFSMA)o(CSE)g(computer)g(science)h(curriculum,)i (the)d(participan)o(ts)g(at)f(the)h(planning)0 332 y(meeting)14 b(w)o(an)o(ted)g(to)f(ensure)i(that)e(b)q(oth)h(approac)o(hes)g(w)o(ould)g(b) q(e)h(represen)o(ted.)20 b(\(Our)14 b(o)o(wn)f(p)q(ersonal)i(leanings)0 427 y(w)o(ere)i(mixed.\))25 b(As)17 b(a)g(result,)h(Institute)f(participan)o (ts)h(tak)o(e)e(t)o(w)o(o)g(in)o(tro)q(ductory)g(programming)h(courses,)g (one)0 523 y(eac)o(h)k(summer;)i(the)e(\014rst)g(is)g(Logo-based)g(and)h(the) f(second)g(uses)g(P)o(ascal.)37 b(W)l(e)21 b(c)o(hose)g(Logo)g(rather)f(than) 0 618 y(Sc)o(heme)14 b(to)e(represen)o(t)i(the)f(sym)o(b)q(olic)h (programming)f(approac)o(h)f(partly)i(b)q(ecause)g(the)f(Ab)q(elson)h(and)g (Sussman)0 714 y(text)f(is)i(more)e(adv)m(anced)i(than)f(what)f(w)o(e)g(w)o (an)o(ted)h(for)f(an)h(in)o(tro)q(ductory)f(high)i(sc)o(ho)q(ol)f(course;)g (partly)g(b)q(ecause)0 809 y(Logo)k(is)g(more)g(generally)h(kno)o(wn)f(in)h (sc)o(ho)q(ols;)h(and)e(partly)g(b)q(ecause)h(w)o(e)f(had)h(an)f(appropriate) g(Logo-based)0 905 y(text)d(a)o(v)m(ailable)i([Harv)o(ey)l(,)d(1985].)91 1000 y(Eac)o(h)20 b(programming)f(course)i(extends)f(b)q(ey)o(ond)h(the)f (usual)h(high)g(sc)o(ho)q(ol)g(lev)o(el)g(of)f(sophistication,)i(al-)0 1095 y(though)17 b(w)o(e)f(think)i(that)e(they)h(are)f(not)h(b)q(ey)o(ond)g (the)g(abilities)i(of)d(high)i(sc)o(ho)q(ol)f(studen)o(ts.)25 b(The)17 b(Logo)f(course)0 1191 y(includes)i(v)o(ery)e(little)h(of)e(the)h (traditional)h(turtle)f(graphics)g(activities,)h(fo)q(cusing)g(instead)f(on)g (functional)h(pro-)0 1286 y(gramming)f(and)g(list)h(pro)q(cessing.)24 b(Adv)m(anced)18 b(ideas)e(suc)o(h)h(as)f(recursion)h(and)f(higher-order)h (functions)g(\(that)0 1382 y(is,)e(functions)h(that)e(op)q(erate)h(on)g (other)g(functions)h(as)e(data\))g(are)h(c)o(hallenging)i(to)d(the)h (participan)o(ts,)g(but)h(once)0 1477 y(learned,)23 b(they)f(allo)o(w)f (complicated)i(problems)f(to)e(b)q(e)i(solv)o(ed)g(elegan)o(tly)g(and)f(with) h(minimal)h(e\013ort.)37 b(F)l(or)0 1573 y(example,)16 b(consider)g(this)f (short)g(program)f(in)i(the)f(Berk)o(eley)h(Logo)f(dialect:)0 1679 y Fe(TO)24 b(CHOOSE)f(:MENU)g([:SOFAR)g([]])0 1734 y(IF)h(EMPTYP)f (:MENU)g([PRINT)g(:SOFAR)g(STOP])0 1788 y(FOREACH)g(FIRST)g(:MENU)g ([\(CHOOSE)g(BUTFIRST)g(:MENU)g(SENTENCE)g(:SOFAR)g(?\)])0 1843 y(END)0 1950 y Fg(This)12 b(pro)q(cedure)g(con)o(tains)g(only)g(t)o(w)o (o)e(instruction)i(lines,)h(but)f(it)f(uses)h(b)q(oth)f(recursion)h(\(the)g (pro)q(cedure)g Fe(CHOOSE)0 2045 y Fg(is)h(in)o(v)o(ok)o(ed)f(within)i (itself)t(\))e(and)h(the)f(higher-order)h(to)q(ol)g Fe(FOREACH)e Fg(\(applying)j(an)e(instruction)h(to)f(eac)o(h)g(elemen)o(t)0 2141 y(of)i(a)g(list\))h(to)f(solv)o(e)g(a)g(tree-structured)h(problem.)20 b(When)15 b(in)o(v)o(ok)o(ed)g(with)f(a)h(\\men)o(u")f(of)g(indep)q(enden)o (t)i(c)o(hoices,)0 2236 y(it)f(prin)o(ts)h(ev)o(ery)f(p)q(ossible)i(com)o (bination)f(of)f(c)o(hoices,)g(lik)o(e)i(this:)0 2343 y Fe(?)24 b(CHOOSE)f([[SMALL)g(MEDIUM)g(LARGE])g([VANILLA)g([RUM)g(RAISIN])g(GINGER)g (RASPBERRY])239 2397 y([CONE)g(CUP]])0 2452 y(SMALL)g(VANILLA)g(CONE)0 2506 y(SMALL)g(VANILLA)g(CUP)0 2561 y(SMALL)g(RUM)h(RAISIN)f(CONE)0 2615 y(SMALL)g(RUM)h(RAISIN)f(CUP)0 2670 y(SMALL)g(GINGER)g(CONE)964 2779 y Fg(4)p eop %%Page: 5 5 bop 0 45 a Fe(SMALL)23 b(GINGER)g(CUP)0 100 y(SMALL)g(RASPBERRY)g(CONE)0 155 y(SMALL)g(RASPBERRY)g(CUP)0 209 y(MEDIUM)g(VANILLA)g(CONE)0 264 y(MEDIUM)g(VANILLA)g(CUP)0 318 y(MEDIUM)g(RUM)g(RAISIN)h(CONE)0 373 y(MEDIUM)f(RUM)g(RAISIN)h(CUP)0 427 y(MEDIUM)f(GINGER)g(CONE)0 482 y(MEDIUM)g(GINGER)g(CUP)0 536 y(MEDIUM)g(RASPBERRY)g(CONE)0 591 y(MEDIUM)g(RASPBERRY)g(CUP)0 645 y(LARGE)g(VANILLA)g(CONE)0 700 y(LARGE)g(VANILLA)g(CUP)0 755 y(LARGE)g(RUM)h(RAISIN)f(CONE)0 809 y(LARGE)g(RUM)h(RAISIN)f(CUP)0 864 y(LARGE)g(GINGER)g(CONE)0 918 y(LARGE)g(GINGER)g(CUP)0 973 y(LARGE)g(RASPBERRY)g(CONE)0 1027 y(LARGE)g(RASPBERRY)g(CUP)0 1139 y Fg(\(In)15 b(dialects)h(of)e(Logo)g (other)g(than)g(Berk)o(eley)i(Logo)e(and)g(Ob)s(ject)h(Logo,)f(the)g Fe(FOREACH)g Fg(to)q(ol)g(is)h(not)g(automati-)0 1234 y(cally)h(pro)o(vided,) g(but)f(it)h(can)f(b)q(e)h(written)f(in)h(Logo.\))91 1332 y(The)j(P)o (ascal-based)h(course)g(in)g(the)f(second)h(summer)f(is)h(divided)h(in)o(to)f (t)o(w)o(o)e(three-w)o(eek)h(comp)q(onen)o(ts.)0 1427 y(The)13 b(\014rst)f(is)h(an)g(in)o(tro)q(duction)g(to)f(the)h(P)o(ascal)g(language)f (comparable)h(in)h(scop)q(e)f(to)f(the)h(Adv)m(anced)h(Placemen)o(t)0 1523 y(course.)21 b(The)16 b(second)g(is)g(a)f(course)h(on)f(algorithms)h (and)g(data)f(structures,)g(roughly)g(lik)o(e)i(the)f(t)o(ypical)g(\\CS)g(2") 0 1618 y(undergraduate)i(course.)29 b(\(F)l(or)18 b(example,)h(last)f (summer's)g(o\013ering)g(used)h(the)f(con)o(v)o(ex)g(h)o(ull)i(problem)f(as)f (its)0 1714 y(\014rst)g(lab)q(oratory)f(assignmen)o(t.)28 b(This)19 b(is)g(the)f(problem)h(of)e(\014nding)j(whic)o(h)f(p)q(oin)o(ts,)f(out)g(of)g (an)g(arbitrary)f(set)0 1809 y(of)f(p)q(oin)o(ts)h(c)o(hosen)g(in)g(the)g (plane,)h(w)o(ould)f(b)q(e)g(touc)o(hed)g(b)o(y)f(a)h(rubb)q(er)g(band)g (that)f(w)o(as)g(stretc)o(hed)g(around)h(the)0 1904 y(en)o(tire)j(set)f(and)g (then)g(allo)o(w)o(ed)h(to)f(con)o(tract.\))30 b(It)19 b(ma)o(y)g(seem)g (remark)m(able)h(to)e(co)o(v)o(er)h(the)g(A.P)l(.)g(syllabus)h(in)0 2000 y(three)14 b(w)o(eeks,)f(but)h(the)f(participan)o(ts)h(are)g(w)o(orking) f(full-time)i(on)f(computer)f(science,)i(and)f(they)g(ha)o(v)o(e)f(already)0 2095 y(had)i(an)g(adv)m(anced)h(Logo)e(programming)h(course)g(the)g(previous) g(y)o(ear.)20 b(The)15 b(algorithms)g(course)g(is)g(taugh)o(t)f(b)o(y)0 2191 y(Selim)k(Akl,)f(a)f(professor)g(at)g(Queen's)h(Univ)o(ersit)o(y)g(in)h (On)o(tario)e(and)h(the)f(author)g(of)g(three)h(texts)f(in)h(the)g(area)0 2286 y(of)h(algorithms)g([Akl,)h(1985;)g(Akl,)g(1989;)g(Akl,)g(1992].)28 b(The)19 b(in)o(tro)q(duction)g(to)f(P)o(ascal)g(has)g(b)q(een)i(taugh)o(t)d (b)o(y)0 2382 y(Mic)o(hael)f(Levy)l(,)g(professor)e(at)h(the)g(Univ)o(ersit)o (y)h(of)f(Victoria,)h(and)f(b)o(y)g(Darrell)h(T)l(urnidge,)g(an)f(Assistan)o (t)g(Dean)0 2477 y(of)g(Arts)f(and)i(Sciences)h(at)d(Ken)o(t)i(State)e(Univ)o (ersit)o(y)i(and)g(an)f(asso)q(ciate)g(director)g(of)g(IFSMA)o(CSE.)91 2575 y(Eac)o(h)h(summer's)g(programming)g(course)g(runs)h(in)g(parallel)h (with)e(a)g(second)h(course)g(in)g(whic)o(h)g(program-)0 2670 y(ming)g(is)f(not)g(the)g(fo)q(cus,)g(although)g(programming)g(ma)o(y)f(b)q (e)i(used)f(as)g(a)g(learning)h(to)q(ol.)23 b(The)16 b(\014rst)f(summer's)964 2779 y(5)p eop %%Page: 6 6 bop 0 45 a Fg(course)15 b(is)g(ab)q(out)g(the)g(use)g(of)g(computing)g(in)h (sc)o(ho)q(ols)f(outside)g(of)g(computer)g(science)h(prop)q(er.)k(This)c (course)e(is)0 141 y(o\013ered)i(b)q(ecause)h(a)e(high)i(sc)o(ho)q(ol's)f (computer)g(science)i(teac)o(her)e(is)g(lik)o(ely)i(also)e(to)f(b)q(e)i(the)f (computing)h(exp)q(ert)0 236 y(who)11 b(is)h(consulted)h(ab)q(out)e(ev)o(ery) g(asp)q(ect)h(of)f(educational)h(computing.)20 b(This)12 b(is)f(the)h(course) f(in)i(the)e(IFSMA)o(CSE)0 332 y(computer)16 b(science)i(strand)e(that)f(has) h(c)o(hanged)h(most)e(o)o(v)o(er)g(the)i(three)f(summers)g(in)h(resp)q(onse)g (to)e(pragmatic)0 427 y(needs.)32 b(As)19 b(originally)i(designed,)f(the)g (course)f(had)g(t)o(w)o(o)e(three-w)o(eek)i(sections.)32 b(The)19 b(\014rst)g(w)o(as)f(ab)q(out)h(the)0 523 y(tec)o(hnical)g(\\n)o(uts)e(and)h (b)q(olts")g(of)f(using)i(computers:)e(w)o(ord)g(pro)q(cessing,)i (spreadsheets,)f(and)g(so)f(on,)h(as)f(w)o(ell)0 618 y(as)e(hin)o(ts)h(ab)q (out)g(c)o(ho)q(osing)g(hardw)o(are,)e(net)o(w)o(orking,)h(and)h(similar)g (issues.)22 b(The)16 b(second)g(three)g(w)o(eeks)f(w)o(as)g(an)0 714 y(o)o(v)o(erview)j(of)g(the)g(use)g(of)g(computing)g(throughout)g(the)g (curriculum,)i(com)o(bining)g(general)e(readings)h(with)f(a)0 809 y(sampler)e(of)e(activities)j(from)d(v)m(arious)i(discipline)q(s.)91 928 y(This)k(original)h(design)g(has)f(c)o(hanged)g(for)f(t)o(w)o(o)g (reasons.)33 b(The)21 b(\014rst)e(w)o(as)g(that)g(the)h(\\n)o(uts)g(and)g(b)q (olts")0 1024 y(w)o(ork)f(turned)h(out)f(to)g(b)q(e)h(so)f(p)q(opular)i(that) d(participan)o(ts)i(in)h(the)e(mathematics)h(strands)f(w)o(an)o(ted)g(to)g (tak)o(e)0 1119 y(the)g(course)f(also.)31 b(It)18 b(is)i(taugh)o(t)d(b)o(y)i (Bill)i(Hun)o(t,)e(a)f(Macin)o(tosh)g(virtuoso,)h(who)g(is)g(Director)f(of)h (T)l(ec)o(hnology)0 1215 y(for)d(the)g(Ma)o(y\014eld,)h(Ohio)h(Cit)o(y)e(Sc)o (ho)q(ols)h(and)g(a)f(winner)h(of)f(the)h(Presiden)o(tial)h(Aw)o(ard)e(for)g (Excellence)j(in)e(the)0 1310 y(T)l(eac)o(hing)j(of)e(Mathematics.)31 b(T)l(o)19 b(mak)o(e)f(Bill's)j(w)o(orkshop)d(a)o(v)m(ailable)i(to)f(all)h (participan)o(ts,)g(starting)e(in)i(the)0 1405 y(second)c(summer)f(it)g(w)o (as)g(mo)o(v)o(ed)f(in)o(to)h(the)h(ev)o(ening)g(program.)91 1525 y(The)j(second)g(half)g(of)g(the)f(original)i(design)g(w)o(as)e (expanded)i(to)e(\014ll)i(part)e(of)g(the)h(hole)h(th)o(us)e(left)h(in)h(the) 0 1620 y(computer)15 b(science)i(sc)o(hedule.)22 b(The)16 b(course)f(is)h (taugh)o(t)e(b)o(y)i(P)o(aul)f(Golden)o(b)q(erg,)h(who)f(has)g(taugh)o(t)g (at)f(all)j(lev)o(els)0 1715 y(from)11 b(second)i(grade)e(through)h(graduate) f(sc)o(ho)q(ol)h(and)g(is)g(no)o(w)g(a)f(Senior)i(Scien)o(tist)g(at)e (Education)i(Dev)o(elopmen)o(t)0 1811 y(Cen)o(ter)k(in)h(Massac)o(h)o (usetts.)25 b(P)o(aul)17 b(has)h(enric)o(hed)g(the)g(course)f(in)h(t)o(w)o(o) e(w)o(a)o(ys.)25 b(First,)18 b(he)f(is)h(himself)h(a)e(dev)o(el-)0 1906 y(op)q(er)d(of)f(computer-based)h(curriculum)h(in)f(sev)o(eral)g(areas,) f(including)j(sp)q(ecial)f(education)g([Golden)o(b)q(erg,)e(1979;)0 2002 y(Golden)o(b)q(erg,)h(et.)19 b(al.,)14 b(1984],)e(linguistics)k([Golden) o(b)q(erg)d(and)h(F)l(eurzeig,)g(1987],)e(and)i(fractal)f(geometry)g([Gold-)0 2097 y(en)o(b)q(erg,)i(1989].)k(Second,)d(as)f(an)h(exp)q(erienced)i(pro)q (cess)d(group)g(leader)i(with)e(psyc)o(ho)q(dynamic)i(training,)f(P)o(aul)0 2193 y(has)h(in)o(tro)q(duced)g(a)g(group)f(discussion)i(comp)q(onen)o(t)f (to)f(the)h(course.)24 b(He)17 b(divides)i(the)e(participan)o(ts)g(in)o(to)f (t)o(w)o(o)0 2288 y(groups)g(of)f(15;)h(while)h(one)g(group)e(is)i(w)o (orking)f(indep)q(enden)o(tly)j(in)d(the)h(computer)f(lab,)g(the)g(other)g (is)g(meeting)0 2384 y(with)h(P)o(aul)f(for)g(a)g(wide-ranging)h(discussion)h (of)e(participan)o(ts')h(concerns)g(ab)q(out)f(educational)h(issues.)25 b(These)0 2479 y(discussions)20 b(ha)o(v)o(e)e(no)h(predetermined)h(agenda,)f (and)g(their)g(c)o(haracter)f(has)g(b)q(een)i(v)o(ery)e(di\013eren)o(t)h (from)f(one)0 2575 y(group)c(to)g(another,)g(but)h(they)g(are)f(alw)o(a)o(ys) g(strongly)g(connected)i(with)f(other)f(parts)g(of)g(the)h(IFSMA)o(CSE)f (pro-)0 2670 y(gram)h(and)h(help)i(participan)o(ts)e(understand)h(more)e (fully)j(the)e(p)q(edagogic)h(implications)h(of)d(their)i(exp)q(eriences)964 2779 y(6)p eop %%Page: 7 7 bop 0 45 a Fg(as)15 b(learners)h(for)e(their)i(later)f(w)o(ork)f(as)h(teac)o (hers.)91 145 y(The)e(non-programming)f(course)h(in)h(the)f(second)g(summer)g (is)g(a)g(sampler)g(of)f(topics)h(in)h(computer)f(science,)0 241 y(including)g(automata)c(theory)l(,)i(discrete)g(mathematics,)g (programming)f(languages,)h(and)f(arti\014cial)i(in)o(telligence)0 336 y([Harv)o(ey)l(,)i(1987].)k(The)d(rationale)g(for)f(this)h(course)g(is)g (that)f(man)o(y)g(studen)o(ts)g(lea)o(v)o(e)h(high)h(sc)o(ho)q(ol)f(thinking) h(that)0 432 y(a)g(computer)h(scien)o(tist)h(is)f(someone)g(who)f(kno)o(ws)g (t)o(w)o(o)g(dozen)h(programming)f(languages,)h(and)g(with)g(no)g(idea)0 527 y(ab)q(out)c(the)g(range)f(of)h(topics)g(they'll)h(meet)f(in)h(college.) 20 b(As)13 b(in)h(IFSMA)o(CSE's)e(mathematics)h(courses,)g(the)g(goal)0 622 y(is)18 b(to)f(use)h(the)g(computer)g(as)f(a)g(medium)i(that)e(allo)o(ws) h(an)g(exp)q(erimen)o(tal)h(approac)o(h)e(to)g(otherwise)h(abstract)0 718 y(ideas.)31 b(F)l(or)18 b(example,)i(participan)o(ts)f(explore)g (automata)e(theory)h(using)i(t)o(w)o(o)d(computer)i(programs,)f(one)g(of)0 813 y(whic)o(h)e(sim)o(ulates)g(a)f(\014nite)h(state)e(mac)o(hine,)i(while)g (the)f(other)g(translates)g(a)g(regular)g(expression)h(in)o(to)f(a)g (\014nite)0 909 y(state)g(mac)o(hine.)21 b(Before)16 b(there)f(is)h(an)o(y)f (in)o(tro)q(duction)i(of)e(tec)o(hnical)i(v)o(o)q(cabulary)l(,)e(participan)o (ts)h(use)g(the)f(FSM)0 1004 y(sim)o(ulator)k(to)f(pla)o(y)h(a)g(sort)f(of)g (\\guess)h(m)o(y)f(rule")i(game)e(in)i(whic)o(h)f(the)g(rules)h(sp)q(ecify)g (allo)o(w)o(able)g(strings)e(of)0 1100 y(letters)e(using)h(only)g(the)f (letters)g(A,)g(B,)g(and)g(C.)f(\(One)i(p)q(ossible)h(rule)f(is)f(that)g(the) g(string)g(m)o(ust)g(start)e(with)j(A)0 1195 y(and)d(end)h(with)g(C.\))e(FSM) g(notation)h(is)h(in)o(tro)q(duced)g(as)f(a)g(w)o(a)o(y)f(to)g(express)h(the) h(game)e(rules)i(in)g(an)f(algorithmic)0 1291 y(form|one)h(that)g(a)f (computer)i(can)f(use)g(directly)i(to)e(c)o(hec)o(k)g(whether)g(a)g(giv)o(en) h(string)f(follo)o(ws)g(a)g(giv)o(en)h(rule.)0 1421 y Fh(Success)h(with)h (Exp)q(erien)o(tial)h(Learning)91 1520 y Fg(The)11 b(Adv)m(anced)h(T)l(opics) g(course)f(includes)i(t)o(w)o(o)c(asp)q(ects)i(of)g(programming)f(languages.) 18 b(There)12 b(is)f(a)f(section)0 1616 y(ab)q(out)18 b(language)g(design,)i (in)f(whic)o(h)g(tec)o(hnical)h(issues)f(suc)o(h)f(as)g(scop)q(e)h(of)f(v)m (ariables)h(and)g(call)g(b)o(y)f(reference)0 1711 y(are)i(considered)h(in)g (the)g(con)o(text)e(of)h(a)g(comparison)g(b)q(et)o(w)o(een)h(Logo)e(and)i(P)o (ascal.)34 b(A)21 b(second)f(section,)i(on)0 1807 y(compiler)c(construction,) f(is)g(illustrated)h(with)g(a)e(recursiv)o(e)h(descen)o(t)h(compiler)g(for)e (P)o(ascal)g(written)h(in)h(Logo.)0 1902 y(\(The)h(ob)s(ject)g(language,)h (in)o(to)g(whic)o(h)g(a)f(P)o(ascal)g(program)f(is)i(translated,)g(is)g(also) f(Logo.)32 b(This)20 b(mak)o(es)f(the)0 1998 y(compiler)c(somewhat)e (unrealistic)j(but)d(also)h(k)o(eeps)g(it)g(p)q(ortable)g(and)g(mak)o(es)g (it)g(p)q(ossible)h(to)e(discuss)i(fron)o(t-end)0 2093 y(parsing)g(issues)h (without)g(ha)o(ving)f(to)g(learn)g(ab)q(out)h(nativ)o(e)f(mac)o(hine)h (languages.\))91 2193 y(I)k(ha)o(v)o(e)f(taugh)o(t)g(this)h(course)f(t)o (wice)h(at)f(IFSMA)o(CSE.)g(The)h(\014rst)f(time,)h(I)g(hadn't)g(managed)f (to)g(in)o(v)o(en)o(t)0 2288 y(exp)q(erimen)o(ts)i(for)e(the)h(participan)o (ts)g(to)f(use)h(in)h(exploring)g(the)f(ideas.)34 b(In)20 b(fact,)g(I)g (didn't)h(think)f(an)o(y)g(suc)o(h)0 2384 y(activities)d(w)o(ere)e(p)q (ossible)j(for)d(the)h(\014rst)f(part,)g(on)h(language)g(design.)22 b(I)17 b(did)f(ha)o(v)o(e)g(ideas)g(for)f(activities)i(in)g(the)0 2479 y(second)i(part,)e(but)i(those)f(ideas)g(w)o(ere)g(mostly)g(extensions)h (to)e(the)i(already-written)f(P)o(ascal)g(compiler,)i(and)0 2575 y(required)14 b(that)f(the)g(participan)o(ts)h(already)f(understand)h (the)f(structure)g(of)g(the)g(program.)18 b(Therefore,)13 b(I)h(ended)0 2670 y(up)k(doing)f(a)g(lot)g(of)g(lecturing)h(during)g(those)f(w)o(eeks.)26 b(The)17 b(participan)o(ts,)h(who)f(had)g(felt)g(quite)h(comfortable)964 2779 y(7)p eop %%Page: 8 8 bop 0 45 a Fg(with)15 b(automata)e(theory)i(and)g(discrete)g(mathematics)g(b) q(ecause)h(of)e(the)h(activit)o(y-based)g(approac)o(h,)g(ended)g(up)0 141 y(feeling)i(that)d(the)h(topic)h(of)f(programming)f(languages)i(w)o(as)e (to)q(o)h(hard)g(for)f(them.)91 245 y(The)g(second)g(summer,)g(b)q(efore)g (an)o(y)f(discussion)j(of)d(programming)g(language)h(design,)h(I)f(ga)o(v)o (e)f(the)h(partic-)0 341 y(ipan)o(ts)f(the)g(follo)o(wing)h(assignmen)o(t:)19 b(\\W)l(rite)13 b(programs)f(for)g(eac)o(h)h(of)g(the)g(follo)o(wing)h(in)g (as)f(man)o(y)f(languages)h(as)0 436 y(p)q(ossible.)21 b(F)l(eel)15 b(free)e(to)h(consult)g(with)g(other)f(p)q(eople)i(who)f(kno)o(w)f(these)h (languages)g(b)q(etter)f(than)h(y)o(ou)f(do.)20 b(Y)l(ou)0 532 y(should)c(at)e(least)h(b)q(e)h(able)f(to)g(do)g(Logo)f(and)h(P)o(ascal;) g(other)f(p)q(ossibilities)k(are)d(Sc)o(heme,)g(ISETL,)g(and)h(BASIC.)0 627 y(Some)f(programs)f(ma)o(y)h(turn)g(out)g(to)f(b)q(e)i(imp)q(ossible)i (in)e(some)e(languages.")196 709 y(1.)20 b(Mergesort)14 b(an)h(arra)o(y)f(or) h(a)f(list)i(of)f(n)o(um)o(b)q(ers.)196 790 y(2.)20 b(Sh)o(u\017e)c(an)f (arra)o(y)f(or)g(a)h(list)h(of)f(n)o(um)o(b)q(ers.)196 872 y(3.)20 b(Exc)o(hange)15 b(the)g(v)m(alues)i(of)e(t)o(w)o(o)e(v)m(ariables.) 196 953 y(4.)20 b(T)l(ak)o(e)15 b(a)g(function)h Fd(F)21 b Fg(as)15 b(input;)h(output)f(the)g(function)h(that)f(computes)g Fd(F)6 b Fg(\()p Fd(F)g Fg(\()p Fd(x)p Fg(\)\))15 b(for)g(input)h Fd(x)p Fg(.)196 1035 y(5.)k(Compute)15 b(all)h(the)f(prime)h(n)o(um)o(b)q (ers)g(less)g(than)f(an)g(input)h Fd(N)5 b Fg(.)19 b(\(Output)d(an)f(arra)o (y)f(or)g(a)h(list.\))196 1116 y(6.)20 b(Compute)15 b(all)h(the)f(factors)f (of)h(an)g(input)i Fd(N)5 b Fg(.)91 1221 y(P)o(articipan)o(ts)11 b(w)o(ere)f(already)i(familiar)f(with)h(Logo)e(\(a)g(list-based)j(language\)) d(and)h(P)o(ascal)g(\(an)g(arra)o(y-based)0 1316 y(language\).)24 b(ISETL)18 b(is)f(a)f(functional)i(language)f(with)g(a)g(notation)f(designed) i(to)e(b)q(e)i(v)o(ery)e(close)h(to)f(standard)0 1411 y(mathematical)g (notation,)g(in)g(whic)o(h)h(the)f(main)h(data)e(aggregate)g(is)h(the)g Ff(set)p Fg(,)f(essen)o(tially)j(an)e(unordered)h(list.)0 1507 y(ISETL)d(is)f(not)f(taugh)o(t)g(in)i(the)f(computer)g(science)h(strand,)f (but)g(is)g(hea)o(vily)h(used)g(in)f(the)g(mathematics)g(strand,)0 1602 y(so)g(the)g(CS)g(participan)o(ts)g(w)o(ere)g(encouraged)g(to)f(consult) i(their)f(friends)h(in)g(the)f(other)g(group.)19 b(Sc)o(heme)13 b(had)g(not)0 1698 y(previously)k(b)q(een)g(used)f(b)o(y)f(either)h(strand,)f (but)h(it)g(w)o(as)f(installed)i(on)f(the)f(computer)h(net)o(w)o(ork)e(for)h (this)h(w)o(eek)0 1793 y(and)f(I)h(used)g(t)o(w)o(o)e(class)h(sessions)h(to)e (demonstrate)h(it)g(and)h(encourage)f(the)g(participan)o(ts)h(to)e(pla)o(y)i (with)f(it.)91 1898 y(P)o(articipan)o(ts)e(v)m(aried)i(widely)g(in)f(the)g (degree)g(to)f(whic)o(h)h(they)g(completed)g(the)g(assignmen)o(t,)f(whic)o(h) h(called)0 1993 y(for)d(six)h(programs)f(in)h(eac)o(h)g(of)f(\014v)o(e)h (languages.)19 b(But)12 b(one)f(of)h(the)f(great)g(virtues)h(of)f(the)h(exp)q (erimen)o(tal)h(approac)o(h)0 2088 y(is)19 b(that)g(it)g(isn't)g(necessary)g (for)f(a)g(learner)i(to)e(complete)i(assignmen)o(ts!)30 b(An)o(y)19 b(participan)o(t)h(who)e(made)h(an)o(y)0 2184 y(serious)d(e\013ort)e(at)h (all)i(quic)o(kly)g(sa)o(w)d(that)h(only)h(languages)g(with)g(\014rst-class)g (functions,)g(suc)o(h)f(as)h(Sc)o(heme)g(and)0 2279 y(ISETL,)j(allo)o(w)g (the)f(fourth)g(problem)h(to)f(b)q(e)h(solv)o(ed.)30 b(Most)18 b(participan)o(ts|ev)o(en)i(if)f(their)g(programs)e(nev)o(er)0 2375 y(w)o(ork)o(ed|sa)o(w)11 b(that)g(lists)i(are)e(easier)h(to)g(mergesort) f(than)g(arra)o(ys,)g(but)h(arra)o(ys)f(are)g(easier)i(to)e(sh)o(u\017e.)19 b(Filtering)0 2470 y(problems)d(suc)o(h)f(as)f(the)i(last)e(t)o(w)o(o)g(are)h (naturally)g(expressed)h(\\all)g(at)e(once")h(in)h(languages)f(with)g (higher-order)0 2566 y(functions,)h(but)f(are)g(expressed)h(as)f(iterativ)o (e)g(lo)q(ops)h(in)g(languages)f(that)f(emphasize)j(iteration.)91 2670 y(A)12 b(similar)h(activit)o(y-\014rst)f(approac)o(h)g(also)g(rescued)h (the)f(compiler)h(unit.)20 b(I)12 b(had)g(originally)i(c)o(hosen)f(to)e(w)o (ork)964 2779 y(8)p eop %%Page: 9 9 bop 0 45 a Fg(with)13 b(a)f(P)o(ascal)g(compiler)h(in)h(order)e(to)f (demonstrate)h(the)g(nature)h(of)f(lexical)i(scop)q(e.)19 b(But)13 b(the)f(v)o(ery)g(complexit)o(y)0 141 y(of)k(this)i(issue,)g(and)f(the)g (corresp)q(onding)h(recursiv)o(e)f(structure)g(of)f(the)h(compiler,)i(made)e (this)g(a)f(bad)i(starting)0 236 y(p)q(oin)o(t)d(for)e(an)h(activit)o(y)g (approac)o(h;)g(the)g(participan)o(ts)h(w)o(ould)f(nev)o(er)g(ha)o(v)o(e)g (written)g(a)g(P)o(ascal)g(compiler)h(from)e(a)0 332 y(blank)i(start.)j (Instead,)c(w)o(e)g(b)q(egan)g(the)g(w)o(eek)f(b)o(y)h(taking)g(on)g(the)g (easier)g(task)f(of)g(a)h(BASIC)h(compiler.)20 b(BASIC)0 427 y(is)e(structurally)g(simple)h(b)q(ecause)f(eac)o(h)g(instruction)g(line)h(b) q(egins)g(\(not)e(coun)o(ting)g(the)h(line)h(n)o(um)o(b)q(er\))e(with)h(a)0 523 y(k)o(eyw)o(ord)f(\(suc)o(h)g(as)g Fe(LET)g Fg(or)f Fe(PRINT)p Fg(\))h(that)f(sp)q(eci\014es)j(the)f(kind)g(of)f(instruction)h(on)f(the)h (line.)27 b(The)18 b(computer)0 618 y(lab)e(w)o(as)g(arranged)f(as)g(\014v)o (e)h(large)g(clusters)h(of)e(tables,)h(eac)o(h)g(with)h(ab)q(out)e(six)i (participan)o(ts.)22 b(I)16 b(assigned)h(eac)o(h)0 714 y(group)e(a)g (statemen)o(t)f(t)o(yp)q(e,)h(and)g(told)h(them)f(to)f(write)i(a)f(pro)q (cedure)h(that)e(w)o(ould)i(tak)o(e)e(a)h(BASIC)h(instruction)0 809 y(line)21 b(as)e(its)h(input,)h(and)f(w)o(ould)g(de\014ne)h(a)e(Logo)g (pro)q(cedure)h(to)f(carry)g(out)g(the)h(instruction.)34 b(W)l(e)19 b(deferred)0 905 y(un)o(til)e(later)f(the)h(top-lev)o(el)g(structure)f(that)f (w)o(ould)i(in)o(v)o(ok)o(e)f(their)h(pro)q(cedures)g(and)f(assem)o(ble)h (the)f(completed)0 1000 y(program.)j(\(As)14 b(it)h(turned)g(out,)f(I)i (decided)g(to)f(write)g(this)g(part)f(m)o(yself)h(b)q(ecause)h(it)f(in)o(v)o (olv)o(ed)h(a)e(few)h(anno)o(ying)0 1095 y(tec)o(hnical)i(issues)f(and)f(no)g (real)h(in)o(tellectual)h(ones.\))91 1215 y(In)c(a)g(w)o(eek)f(of)h(w)o(ork,) e(w)o(e)i(nev)o(er)g(did)g(put)g(together)f(a)h(complete)g(compiler.)20 b(But)13 b(the)g(participan)o(ts)g(all)h(had)0 1310 y(to)h(w)o(ork)g(out)g (sev)o(eral)h(issues)g(in)h(their)f(understanding)h(of)e(ho)o(w)g(to)g(write) h(one.)21 b(The)16 b(biggest)g(issue)h(w)o(as)d(their)0 1405 y(tendency)i(to)f(confuse)g(the)h(v)m(ariables)g(that)f(are)g(part)f(of)h (the)g(compiler)i(itself)f(with)f(v)m(ariables)i(that)d(b)q(elong)j(to)0 1501 y(the)h(compiled)h(program.)26 b(This)18 b(confusion)h(w)o(ork)o(ed)d(b) q(oth)i(w)o(a)o(ys;)f(they)h(w)o(ould)g(try)f(to)g(examine)h(during)h(the)0 1596 y(compilation)c(pro)q(cess)e(v)m(ariables)i(that)e(w)o(ouldn't)g(exist)h (un)o(til)g(the)g(program)e(w)o(as)h(run,)g(but)h(they)f(also)g(put)h(in)o (to)0 1692 y(the)g(compiled)i(co)q(de)f(references)f(to)g(v)m(ariables)h (within)g(the)f(compiler.)21 b(Ev)o(ery)14 b(group)f(did)j(adv)m(ance)e (their)h(w)o(ork)0 1787 y(to)g(the)g(p)q(oin)o(t)h(at)f(whic)o(h)h(this)g (confusion)g(w)o(as)e(clari\014ed.)22 b(The)16 b(issue)g(is)g(a)f(profound)h (one.)k(A)15 b(compiler)i(breaks)0 1883 y(do)o(wn)e(the)g(simplistic)j(w)o (all)d(b)q(et)o(w)o(een)h(program)e(and)h(data)g(in)h(the)f(minds)h(of)f(b)q (eginning)i(programmers.)91 2002 y(Another)c(issue)h(that)f(came)g(up)h(in)g (the)g(participan)o(ts')f(w)o(ork)g(w)o(as)f(tok)o(enization.)20 b(The)13 b(tok)o(enization)h(rules)0 2097 y(for)j(Logo)f(are)h(v)o(ery)g (similar)i(to)d(those)h(of)g(BASIC;)h(for)f(example,)h(the)f(arithmetic)h(op) q(erators)e(are)h(tok)o(ens)g(in)0 2193 y(themselv)o(es.)j(But)14 b(there)g(are)f(a)h(few)g(di\013erences.)20 b(The)14 b(most)g(imp)q(ortan)o (t)f(turned)h(out)g(to)f(b)q(e)h(that)g(the)g(comma)0 2288 y(is)h(a)g(delimiter)i(in)e(BASIC)h(but)f(not)f(in)i(Logo.)j(The)c(groups)g (w)o(orking)f(on)h(the)g Fe(INPUT)f Fg(and)h Fe(PRINT)f Fg(statemen)o(ts)0 2384 y(quic)o(kly)k(got)e(b)q(ogged)h(do)o(wn)g(in)g(trying)g(to)f(extract)g (commas)g(from)g(w)o(ords.)24 b(I)18 b(suggested)e(that)g(these)h(groups)0 2479 y(split)e(their)g(e\013orts;)e(one)h(subgroup)g(w)o(ould)g(compile)i (the)e(statemen)o(ts)f(assuming)h(that)g(an)o(y)f(comma)h(w)o(ould)g(b)q(e)0 2575 y(seen)h(as)e(a)h(separate)g(w)o(ord)f(just)h(as)g(a)g(plus)h(sign)f(w)o (ould)h(b)q(e,)g(while)g(the)f(other)g(subgroup)g(w)o(ork)o(ed)g(only)g(on)h (this)0 2670 y(tok)o(enization)h(task.)j(Later,)14 b(in)i(a)f(discussion)i (with)e(the)h(en)o(tire)f(class,)g(w)o(e)g(all)h(agreed)f(that)g(it)g(w)o (ould)h(b)q(e)f(more)964 2779 y(9)p eop %%Page: 10 10 bop 0 45 a Fg(sensible)21 b(to)d(design)i(the)e(compiler)i(in)g(a)f(w)o(a)o (y)e(that)h(made)h(tok)o(enization)g(an)g(en)o(tirely)h(separate)e(task,)h (done)0 141 y(uniformly)d(for)f(all)h(statemen)o(t)e(t)o(yp)q(es,)h(rather)f (than)i(as)e(a)h(subtask)g(of)g(compiling)i(eac)o(h)e(statemen)o(t)f(t)o(yp)q (e.)91 239 y(Although)e(w)o(e)f(nev)o(er)h(did)g(examine)h(the)e(P)o(ascal)g (compiler)i(from)e(the)g(textb)q(o)q(ok)h(in)g(an)o(y)f(detail,)i(the)f (partic-)0 335 y(ipan)o(ts')k(exp)q(erience)i(struggling)e(with)g (compile-time)i(v)o(ersus)e(run-time)g(v)m(ariables)i(w)o(as)d(enough)h (preparation)0 430 y(so)i(that)f(I)h(could)h(tell)g(them)f(ab)q(out)g(the)g (implications)i(of)d(lexical)j(scoping)f(rules)f(ev)o(en)h(though)e(they)h (didn't)0 526 y(w)o(ork)g(out)g(the)h(actual)g(pro)q(cess)h(of)e(implemen)o (ting)j(those)d(rules.)32 b(Had)19 b(w)o(e)g(had)g(more)f(time,)i(I)f(w)o (ould)g(ha)o(v)o(e)0 621 y(tried)f(to)e(in)o(tro)q(duce)j(scoping,)f(to)q(o,) e(through)h(activities.)28 b(But)17 b(the)g(lecture)i(that)d(I)i(ga)o(v)o(e)e (as)h(a)g(shortcut)g(w)o(as)0 717 y(v)m(astly)f(more)f(successful)i(than)e(a) g(similar)i(lecture)f(the)g(previous)g(summer)g(to)e(participan)o(ts)i(who)g (hadn't)f(had)0 812 y(the)g(activit)o(y)h(of)e(struggling)i(to)f(write)g(a)g (BASIC)h(compiler.)0 940 y Fh(The)i(Di\016cult)o(y)g(of)f(Understanding)i(F)l (unction)f(as)f(Ob)s(ject)91 1038 y Fg(The)e(idea)g(of)g Ff(function)i Fg(is)f(cen)o(tral)f(to)f(mathematics,)g(and)h(cen)o(tral)g(to)f(the)h (mathematics)f(curriculum)j(at)0 1134 y(IFSMA)o(CSE.)11 b(Less)h(ob)o (viously)l(,)i(it)e(has)f(turned)i(out)e(also)h(to)f(b)q(e)h(cen)o(tral)g(to) f(the)h(computer)g(science)h(curriculum.)91 1232 y(Studen)o(ts)g(notoriously) h(ha)o(v)o(e)f(trouble)h(understanding)g(functions.)20 b(F)l(or)13 b(example,)h(this)g(trouble)f(is)h(at)f(the)0 1328 y(ro)q(ot)f(of)h(their)h (di\016cult)o(y)g(in)g(freshman)f(calculus.)21 b(Mathematics)13 b(educators)g(ha)o(v)o(e)g(fo)q(cused)h(m)o(uc)o(h)f(researc)o(h)g(on)0 1423 y(illuminating)18 b(functions.)i(It)15 b(app)q(ears)g(that)f (mathematicians)h(understand)g(functions)h(in)f(at)f(least)h(t)o(w)o(o)e(w)o (a)o(ys,)0 1519 y(one)i(of)g(whic)o(h)h(is)g(m)o(uc)o(h)f(harder)g(than)g (the)h(other)e([Dubinsky)l(,)i(1991].)91 1617 y(The)h(easier)g(lev)o(el)h(of) e(understanding)i(is)g(that)e(of)g Ff(function)h(as)h(pr)n(o)n(c)n(ess)p Fg(.)23 b(This)17 b(is)g(the)g(view)h(exempli\014ed)0 1712 y(b)o(y)d(the)g(\\function)h(mac)o(hine")g(of)e(high)i(sc)o(ho)q(ol)g (algebra,)f(the)g(meat)f(grinder)i(that)f(accepts)g(n)o(um)o(b)q(ers)g (through)0 1808 y(a)g(funnel)i(at)d(the)i(top)f(and)g(cranks)g(out)g(other)g (n)o(um)o(b)q(ers)h(through)e(a)h(c)o(h)o(ute)h(at)e(the)i(b)q(ottom.)j Ff(Comp)n(osition)d(of)0 1903 y(functions)21 b Fg(can)d(b)q(e)h(understo)q(o) q(d)g(as)f(ho)q(oking)h(the)f(output)g(c)o(h)o(ute)g(of)g(one)h(mac)o(hine)g (to)e(the)h(input)i(funnel)f(of)0 1999 y(another.)25 b(In)18 b(this)f(view,)h(the)g(\\real)f(things")g(that)f(w)o(e)h(manipulate)h(are)f (the)g(n)o(um)o(b)q(ers;)h(functions)g(are)f(w)o(a)o(ys)0 2094 y(in)e(whic)o(h)h(w)o(e)e(manipulate)i(those)f(things.)20 b(This)15 b(view)g(of)g(functions)g(is)g(straigh)o(tforw)o(ardly)e(mo)q(deled)j (through)0 2190 y(pro)q(cedures)f(in)f(a)f(programming)g(language.)20 b(\(In)14 b(fact,)f(man)o(y)g(languages)h(use)g(the)g(w)o(ord)f(\\function")h (to)f(name)0 2285 y(suc)o(h)h(pro)q(cedures.\))20 b(Consider)14 b(the)g(common)g(metaphor)f(in)i(whic)o(h)f(a)g(pro)q(cedure)g(is)h(describ)q (ed)g(as)f(a)f(recip)q(e;)j(it)0 2381 y(is)h(p)q(erfectly)g(clear)g(that)f (the)g(\\real)h(things")f(that)g(w)o(e)g(eat)g(are)g(the)h(ingredien)o(ts,)g (not)f(the)h(recip)q(e)g(itself.)25 b(Y)l(ou)0 2476 y(can't)14 b(eat)g(a)g(recip)q(e,)h(nor)g(can)f(y)o(ou)g(eat)g(the)g(sequence)i(of)e (steps)g(\(turning)h(on)f(the)h(sto)o(v)o(e,)e(and)h(so)g(on\))g(that)g(the)0 2572 y(recip)q(e)j(tells)f(us)f(to)g(p)q(erform.)91 2670 y(The)21 b(second)g(lev)o(el)i(requires)e(us)g(to)f(understand)i Ff(function)f(as)g (obje)n(ct)p Fg(.)36 b(In)22 b(this)f(view,)i(functions)e(are)952 2779 y(10)p eop %%Page: 11 11 bop 0 45 a Fg(promoted)12 b(to)g(\\real)h(things")g(that)f(can)h(themselv)o (es)h(b)q(e)f(manipulated.)21 b(In)13 b(calculus,)i Ff(derivative)h Fg(is)e(a)e(function)0 141 y(whose)17 b(domain)h(and)g(range)f(are)g (functions.)27 b(If)17 b(w)o(e)g(represen)o(t)h(this)f(function)i(as)d Fd(D)q Fg(,)i(w)o(e)f(ma)o(y)f(lo)q(osely)j(write)0 236 y(that)c Fd(D)q Fg(\()p Fd(x)182 220 y Fc(2)202 236 y Fg(\))e(=)h(2)p Fd(x)h Fg(but)h(this)g(notation)f(is)h(misleading)i(b)q(ecause)e Fd(x)1167 220 y Fc(2)1203 236 y Fg(and)g(2)p Fd(x)f Fg(are)h(expressions)g (that)f(represen)o(t)0 332 y(n)o(um)o(b)q(ers.)20 b(W)l(e)15 b(really)i(mean)e(something)g(lik)o(e)748 484 y Fd(D)q Fg(\()p Fd(x)855 456 y Fb(f)843 484 y Fa(7!)e Fd(x)927 466 y Fc(2)947 484 y Fg(\))g(=)g(\()p Fd(y)1093 456 y Fb(g)1080 484 y Fa(7!)g Fg(2)p Fd(y)r Fg(\))0 637 y(\(I)h(ha)o(v)o(e)f(giv)o(en)h(the)g(function)h Fd(g)g Fg(a)e(di\013eren)o(t)h(formal)f(parameter)g(to)h(emphasize)g(that)g (this)g(form)o(ula)f(is)h(ab)q(out)g Fd(f)0 732 y Fg(and)h Fd(g)r Fg(,)g(not)f(ab)q(out)i Fd(x)f Fg(or)f Fd(y)r Fg(.\))20 b(If)c(w)o(e)e(w)o(an)o(t)h(to)f(represen)o(t)h(the)h(function)g Fd(D)g Fg(as)f(a)g(mac)o(hine,)g(it)h(can't)f(b)q(e)h(a)f(meat)0 828 y(grinder,)20 b(but)g(rather)e(a)h(\\metal)g(grinder")g(that)g(tak)o(es)f (meat)g(grinders|not)i(the)f(v)m(alues)i(output)d(b)o(y)i(meat)0 923 y(grinders,)f(but)f(the)g(mac)o(hines)g(themselv)o(es|in)i(its)e(input)h (funnel.)30 b(Although)18 b(w)o(e)g(are)f(still)j(understanding)0 1019 y(the)12 b Ff(higher-or)n(der)18 b Fg(function)13 b Fd(D)g Fg(as)f(a)g(pro)q(cess,)h(w)o(e)f(m)o(ust)f(no)o(w)h(understand)h(the)f (functions)h Fd(f)k Fg(and)c Fd(g)g Fg(as)f(ob)s(jects.)91 1117 y(In)j(Logo)f(programming)f(the)i(di\016cult)o(y)g(ab)q(out)g(function)g (as)f(ob)s(ject)f(\014rst)h(arises)h(in)g(using)g(the)f Fe(IF)g Fg(pro)q(ce-)0 1212 y(dure)i(for)e(conditional)j(execution.)k(In)16 b(the)f(instruction)0 1322 y Fe(IF)24 b(EQUALP)f(:VALUE)g(3)g([PRINT)g ("THREE])0 1434 y Fg(wh)o(y)16 b(are)h(there)f(brac)o(k)o(ets)g(around)h(the) g Fe(PRINT)e Fg(instruction)j(but)f(not)f(around)h(the)f Fe(EQUALP)g Fg(expression?)26 b(W)l(e)0 1530 y(tell)20 b(Logo)f(b)q(eginners)h(that)f (things)g(within)h(brac)o(k)o(ets)e(are)h(literal)h(text,)g(while)g(things)g (not)e(in)i(brac)o(k)o(ets)e(are)0 1625 y(requests)d(to)g(carry)f(out)h(pro)q (cedures:)0 1735 y Fe(?)24 b(PRINT)f([SUM)g(2)h(3])0 1790 y(SUM)f(2)h(3)0 1844 y(?)g(PRINT)f(SUM)g(2)h(3)0 1899 y(5)0 2011 y Fg(When)16 b(they)f(meet)g Fe(IF)p Fg(,)f(these)i(b)q(eginners)h(w)o(an)o(t)d(to)g(sa)o (y)0 2121 y Fe(IF)24 b(EQUALP)f(:VALUE)g(3)g(PRINT)h("THREE)109 b Fg(or)0 2176 y Fe(IF)24 b([EQUALP)e(:VALUE)i(3])f([PRINT)g("THREE])0 2288 y Fg(Although)c(this)f(presen)o(ts)g(itself)i(as)d(a)h(syn)o(tactic)g (question,)h(ab)q(out)g(brac)o(k)o(ets,)e(it's)h(really)h(a)f(problem)h(ab)q (out)0 2384 y(functions)d(as)g(ob)s(jects.)k Fe(IF)c Fg(is)g(a)f (higher-order)h(pro)q(cedure.)22 b(Its)16 b(\014rst)f(input)i(is)f Ff(not)k Fg(a)15 b(function,)h(but)g(rather)f(a)0 2479 y Fe(TRUE)d Fg(or)g Fe(FALSE)g Fg(v)m(alue.)20 b(But)12 b(its)h(second)g(input)h Ff(is)h Fg(a)d(function,)i(in)f(the)g(form)e(of)h(a)h(Logo)f(instruction.)20 b(The)12 b(\014rst)0 2575 y(incorrect)19 b(form)f(ab)q(o)o(v)o(e)f(w)o(ould)i (in)o(v)o(ok)o(e)g Fe(PRINT)p Fg(,)e(actually)i(prin)o(ting)g(the)g(w)o(ord)f Fe(THREE)p Fg(,)f(b)q(efore)i(in)o(v)o(oking)g Fe(IF)p Fg(.)0 2670 y(The)f(second)g(incorrect)g(form)e(w)o(ould)i(put)g(the)f(expression)i Fe(EQUALP)k(:VALUE)g(3)17 b Fg(in)i Fe(IF)p Fg('s)d(\014rst)h(input)i (funnel,)952 2779 y(11)p eop %%Page: 12 12 bop 0 45 a Fg(instead)16 b(of)f(supplying)j Fe(IF)d Fg(with)h(the)g(true)f (or)g(false)h(v)m(alue)h(that)e(results)h(from)e(in)o(v)o(oking)j Fe(EQUALP)p Fg(.)d(Sa)o(ying)i(the)0 141 y(same)c(thing)h(in)h(di\013eren)o (t)e(w)o(ords,)g(w)o(e)h(are)f(using)h Fe(EQUALP)f Fg(as)g(a)g (function-as-pro)q(cess,)i(but)f(w)o(e)f(are)g(using)i Fe(PRINT)0 236 y Fg(as)h(a)g(function-as-ob)s(ject.)91 337 y(This)22 b(di\016cult)o(y)h (arises)f(in)g(Logo)g(programming)f(b)q(ecause)h(Logo)f(treats)g Fe(IF)g Fg(as)h(a)f(pro)q(cedure)h(that)f(is)0 433 y(syn)o(tactically)16 b(lik)o(e)g(an)o(y)f(other.)k(It)c(requires)h(t)o(w)o(o)e(inputs,)h(a)g (true-false)g(v)m(alue)i(and)e(a)f(function.)21 b(But)15 b(the)g(idea)0 528 y(of)e(a)g(functional)h(ob)s(ject)f(is)h(so)f(hard)g(for)g(man)o(y)g(p)q (eople)h(to)f(learn)h(that)e(some)h(dialects)i(of)e(Logo)g(a)o(v)o(oid)g(the) g(issue)0 623 y(b)o(y)h(making)f Fe(IF)g Fg(a)h(sp)q(ecial)h(syn)o(tactic)f (construction,)f(unlik)o(e)j(ev)o(erything)e(else)g(in)h(the)e(language,)h (lo)q(oking)g(more)0 719 y(lik)o(e)i(the)g Fe(IF)e Fg(statemen)o(ts)h(of)f (other)h(languages:)0 830 y Fe(IF)24 b(EQUALP)f(:VALUE)g(3)g(THEN)h(PRINT)f ("THREE)0 946 y Fg(This)13 b(gets)f(past)f(the)i(immediate)g(h)o(urdle,)g (but)g(it)f(misses)h(the)f(c)o(hance)h(to)e(teac)o(h)h(a)g(v)m(aluable)i (lesson.)20 b(F)l(unctional)0 1041 y(ob)s(jects,)14 b(once)i(understo)q(o)q (d,)f(add)g(great)g(expressiv)o(e)h(p)q(o)o(w)o(er)e(to)h(a)g(language.)20 b(F)l(or)14 b(example,)i(w)o(e)f(can)g(write)g(in)0 1137 y(Logo)g(a)f (higher-order)i(function)g(called)h Fe(MAP)d Fg(that)h(applies)h(an)o(y)f (function)h(to)e(eac)o(h)i(of)e(the)h(elemen)o(ts)h(of)f(a)g(list:)0 1248 y Fe(?)24 b(SHOW)f(MAP)g("SQUARE)g([4)h(5)g(6)f(10])0 1302 y([16)g(25)h(36)g(100])0 1418 y Fg(\(The)17 b Fe(FOREACH)f Fg(pro)q(cedure)i(used)f(in)h(an)f(earlier)h(example)g(is)f(a)g(similar)h (higher-order)g(to)q(ol.\))25 b Fe(MAP)16 b Fg(p)q(erforms)0 1514 y(\\all)21 b(at)g(once")g(computations)f(that)g(w)o(ould)i(otherwise)f (require)g(some)g(sort)f(of)g(lo)q(oping)i(mec)o(hanism)g(with)0 1609 y(auxiliary)h(v)m(ariables.)40 b(But)22 b(wh)o(y)f(is)h(the)g(function)g (name)g Fe(SQUARE)f Fg(quoted?)39 b(Ordinarily)24 b(w)o(e)d(quote)h(data)0 1705 y(w)o(ords,)15 b(not)h(pro)q(cedures.)24 b(This)17 b(is)g(exactly)f(the) h(same)f(issue)h(that)e Fe(IF)h Fg(raised;)h(the)g(\014rst)e(input)j(to)d Fe(MAP)h Fg(is)h(the)0 1800 y Fe(SQUARE)d Fg(function)i(itself,)f(not)g(the)f (result)i(of)e(squaring)h(something.)20 b(The)15 b(particular)h(details)g(of) e(punctuation)0 1896 y(are)j(sp)q(eci\014c)i(to)e(Logo,)g(but)g(an)o(y)g (language)h(that)e(allo)o(ws)i(higher-order)g(functions)g(needs)g(some)f (notation)g(to)0 1991 y(distinguish)d(the)f(in)o(v)o(o)q(cation)g(of)f(a)g (pro)q(cedure)h(\(the)f(use)h(of)f(a)g(function)h(as)f(pro)q(cess\))h(from)e (the)i(pro)q(cedure)g(itself)0 2087 y(\(function)j(as)f(ob)s(ject\).)91 2187 y(The)c(same)g(broad)g(issue)g(comes)g(up)h(di\013eren)o(tly)g(in)f (studying)h(compilers.)20 b(Here)11 b(the)g(problem)h(has)e(nothing)0 2283 y(to)h(do)g(with)h(syn)o(tax.)18 b(It)12 b(presen)o(ts)f(itself)i(v)o (ery)e(directly:)20 b(W)l(e)11 b(are)h(w)o(orking)f(with)h(some)f(pro)q (cedures,)i(the)e(ones)h(in)0 2378 y(the)k(compiler)g(itself,)g(that)f(w)o(e) g(think)h(of)f(purely)i(as)e(pro)q(cess.)21 b(Other)15 b(pro)q(cedures,)h (the)g(ones)f(in)i(the)e(program)0 2474 y(that)j(is)i(b)q(eing)h(compiled,)g (m)o(ust)e(b)q(e)h(considered)g(as)f(ob)s(jects)f(during)j(the)e(compilation) h(pro)q(cess,)g(but)g(then)0 2569 y(m)o(ysteriously)c(represen)o(t)f(a)g(pro) q(cess)g(when)h(the)f(compiled)i(program)d(is)i(executed.)91 2670 y(Higher-order)c(functions)f(are)g(to)q(ols)g(whose)g(usefulness)h(is)g (to)q(o)e(great)g(to)h(pass)f(up,)i(and)f(y)o(et)g(our)g(exp)q(erience)952 2779 y(12)p eop %%Page: 13 13 bop 0 45 a Fg(with)13 b(the)f(IFSMA)o(CSE)g(participan)o(ts)h(sho)o(ws)f (that)f(the)i(underlying)h(ideas)f(are)f(surprisingly)i(di\016cult)g(to)e (learn.)0 141 y(W)l(e)f(kno)o(w)f(some)h(w)o(a)o(ys)e(to)h(b)q(egin;)j(for)e (example,)h(turtle)f(graphics)g(pro)s(jects)f(can)h(mak)o(e)f(the)h(issue)g (more)g(concrete)0 236 y([Zazkis)k(and)g(Leron,)h(1990].)i(This)e(is)f(an)h (ongoing)f(area)f(of)h(researc)o(h)g(among)g(the)g(IFSMA)o(CSE)g(facult)o(y)l (.)0 366 y Fh(Educational)20 b(Mythology)e(v)o(ersus)d(Exp)q(erience)91 466 y Fg(The)e(\014nal)g(topic)g(in)h(the)e(Adv)m(anced)i(T)l(opics)g(course) e(is)h(arti\014cial)h(in)o(telligence.)22 b(I)13 b(ga)o(v)o(e)f(the)g (participan)o(ts)h(a)0 561 y(program)g(called)i(Studen)o(t)f(to)f(in)o(v)o (estigate.)20 b(This)14 b(program,)f(m)o(y)g(translation)h(in)o(to)g(Logo)f (of)g(Daniel)i(Bobro)o(w's)0 657 y(original)20 b(1964)e(Lisp)i(v)o(ersion,)g (solv)o(es)g(algebra)f(w)o(ord)f(problems)i(b)o(y)f(using)h(pattern)e(matc)o (hing)h(to)g(turn)g(the)0 752 y(English)c(sen)o(tences)g(in)o(to)f (equations.)20 b(The)14 b(program,)f(t)o(ypical)i(of)f(AI)g(pro)s(jects)g (bac)o(k)g(then,)g(solv)o(es)g(an)g(impres-)0 848 y(siv)o(e)i(v)m(ariet)o(y)g (of)f(problems)i(but)f(also)f(fails)i(on)f(an)f(ev)o(en)h(wider)h(v)m(ariet)o (y)l(.)22 b(It)15 b(\\understands")h(certain)g(sen)o(tence)0 943 y(structures)i(but)g(not)f(others.)28 b(I)18 b(had)g(ask)o(ed)g(the)g (participan)o(ts)g(to)g(try)f(out)h(problems)g(of)g(their)g(o)o(wn.)28 b(If)18 b(the)0 1039 y(program)d(failed)i(to)e(solv)o(e)g(a)h(problem,)g(I)g (ask)o(ed)g(them)f(to)g(try)g(to)g(\014gure)h(out)g(ho)o(w)f(the)h(program)e (w)o(ould)i(ha)o(v)o(e)0 1134 y(to)f(b)q(e)i(mo)q(di\014ed)g(to)e(succeed.)23 b(In)17 b(retrosp)q(ect,)e(this)h(w)o(as)f(to)q(o)g(hard)h(an)g(assignmen)o (t,)g(b)q(ecause)g(Studen)o(t)h(has)e(a)0 1230 y(v)o(ery)g(complicated)h (structure)f(and)h(a)f(w)o(eek)g(w)o(as)f(to)q(o)h(short)f(a)h(time)h(to)e (allo)o(w)i(its)f(exploration.)91 1329 y(On)j(the)g(next-to-last)f(da)o(y)h (of)f(the)g(Institute,)i(a)e(few)h(of)f(the)h(participan)o(ts)g(w)o(ere)f(w)o (orking)g(on)h(Studen)o(t,)0 1425 y(others)f(w)o(ere)h(doing)g(their)g(P)o (ascal)g(homew)o(ork,)f(and)h(others)f(w)o(ere)g(ha)o(ving)h(con)o(v)o (ersations.)27 b(A)o(t)17 b(one)h(p)q(oin)o(t)g(a)0 1520 y(few)c(of)g(the)h (side)g(con)o(v)o(ersations)f(got)g(quite)h(b)q(oisterous,)f(creating)h(an)f (atmosphere)g(in)i(whic)o(h)f(it)g(w)o(as)e(hard)i(for)0 1616 y(an)o(y)o(one)h(to)f(w)o(ork.)22 b(I)16 b(got)f(angry)h(and)g(let)g(the)h (participan)o(ts)f(kno)o(w)g(it,)g(in)o(viting)h(those)f(who)g(w)o(eren't)f (w)o(orking)0 1711 y(to)g(lea)o(v)o(e)g(but)g(insisting)i(that)e(they)g(not)g (prev)o(en)o(t)g(others)f(from)h(w)o(orking.)91 1811 y(The)h(next)g(da)o(y)l (,)g(i.e.,)f(the)i(last)e(da)o(y)h(of)f(the)h(Institute,)h(P)o(aul)f(Golden)o (b)q(erg)h(in)o(vited)g(me)f(to)f(visit)i(his)g(class)0 1906 y(session)d(with)g(the)f(\014rst-y)o(ear)g(participan)o(ts.)20 b(They)14 b(had)f(had)h(a)f(discussion)i(ab)q(out)f(grades,)f(and)h(he)f(w)o (as)g(ab)q(out)0 2002 y(to)f(hand)h(out)g(a)f(p)q(osition)i(pap)q(er)f(he'd)g (written)g(o)o(v)o(ernigh)o(t)f(on)h(the)f(sub)s(ject.)19 b(\(Of)13 b(course)g(w)o(e)f(don't)g(giv)o(e)h(grades)0 2097 y(at)h(IFSMA)o(CSE,)g(and) g(the)h(participan)o(ts)g(all)g(agree)g(that)e(it)i(w)o(ould)g(ruin)g(the)g (exp)q(erience)i(for)d(them)g(if)h(w)o(e)f(did,)0 2193 y(but)19 b(man)o(y)g(feel)h(that)e(high)i(sc)o(ho)q(ol)f(studen)o(ts)g(are)g (di\013eren)o(t)g(from)f(themselv)o(es)i(and)f(need)h(grades.\))30 b(P)o(aul's)0 2288 y(pap)q(er)15 b(suggested)g(some)f(w)o(a)o(ys)g(in)h(whic) o(h)h(grades)e(can)h(b)q(e)g(giv)o(en)g(to)f(reduce)i(their)f(harmfulness)g (and,)g(in)g(some)0 2384 y(cases,)i(ev)o(en)h(allo)o(w)g(grades)f(to)f(con)o (tribute)i(to)f(the)g(learning)i(pro)q(cess.)27 b(He)17 b(though)o(t)g(that)g (I)g(w)o(ould)h(consider)0 2479 y(this)13 b(\\a)e(sellout")i(\(his)g(w)o (ords\))e(and)i(w)o(an)o(ted)e(me)i(to)e(presen)o(t)i(m)o(y)e(o)o(wn)h (views.)20 b(What)11 b(I)i(said,)g(in)g(brief,)g(w)o(as)f(that)0 2575 y(dealing)17 b(with)f(grades)f(is)h(just)g(lik)o(e)h(an)o(y)e(other)g (tension)i(b)q(et)o(w)o(een)f(reform)e(and)i(rev)o(olution,)g(and)g(that)f(I) h(think)0 2670 y(reforms)g(are)h(\014ne,)h(and)g(ev)o(en)f(necessary)l(,)h (as)e(long)i(as)f(w)o(e)g(design)h(our)f(reforms)f(while)j(k)o(eeping)f(in)g (mind)g(the)952 2779 y(13)p eop %%Page: 14 14 bop 0 45 a Fg(rev)o(olution)14 b(that)e(w)o(e)h Ff(r)n(e)n(al)r(ly)k Fg(w)o(an)o(t.)h(\(I)13 b(don't)g(exp)q(ect)h(that)f(sen)o(tence)h(to)e(b)q (e)i(con)o(vincing;)h(the)f(argumen)o(t)e(ab)q(out)0 141 y(reform)i(and)i (rev)o(olution)g(isn't)f(the)g(p)q(oin)o(t)h(I)f(w)o(an)o(t)g(to)f(mak)o(e)h (here,)g(but)g(rather)g(part)g(of)f(the)i(bac)o(kground.\))91 242 y(A)o(t)e(this)h(p)q(oin)o(t)g(one)g(of)f(the)g(participan)o(ts)h(said)g (to)f(me,)h(\\Don't)e(y)o(ou)h(think)h(that)f(if)h(y)o(ou)g(ga)o(v)o(e)e (grades)h(y)o(ou)0 337 y(w)o(ouldn't)h(ha)o(v)o(e)g(had)g(that)g(trouble)g (with)h(the)f(second-y)o(ear)h(participan)o(ts)f(y)o(esterda)o(y?")91 438 y(After)e(getting)h(o)o(v)o(er)f(m)o(y)h(\(naiv)o(e\))f(surprise)i(that)e (this)i(story)e(had)h(reac)o(hed)g(the)g(IFSMA)o(CSE)g(gossip)g(mill,)0 533 y(I)i(ga)o(v)o(e)f(t)o(w)o(o)g(replies.)23 b(The)16 b(\014rst)g(w)o(as)f (that)g(ev)o(en)h(if)h(I)f(could)h(ha)o(v)o(e)e(\\main)o(tained)i (discipline")i(b)o(y)d(force,)f(whic)o(h)0 629 y(is)20 b(what)f(she)g(w)o(as) g(suggesting,)h(the)f(cost)g(w)o(ould)h(b)q(e)g(to)q(o)e(great.)32 b(I)20 b(w)o(ouldn't)f(trade)g(six)h(w)o(eeks)f(of)g(fearless)0 724 y(exploration)d(of)g(di\016cult)h(ideas)g(for)e(one)h(da)o(y)g(of)f (decorum.)22 b(My)16 b(second)g(reply)h(w)o(as)e(a)g(question:)22 b(\\Ha)o(v)o(e)15 b(y)o(ou)0 820 y(ev)o(er)g(taugh)o(t)f(seniors?")91 920 y(\\Y)l(es.")91 1021 y(\\Do)g(y)o(ou)h(giv)o(e)h(them)f(grades?")91 1122 y(\\Y)l(es.")91 1222 y(\\Do)f(the)i(grades)e(prev)o(en)o(t)h(them)g (from)g(ha)o(ving)g(senioritis)i(on)e(the)g(next-to-last)g(da)o(y?")91 1323 y(\\Are)g(y)o(ou)g(kidding?)22 b(They)16 b(get)e(senioritis)j(in)f(No)o (v)o(em)o(b)q(er!")91 1424 y(This)21 b(participan)o(t)f Ff(knows)k Fg(that)19 b(y)o(ou)h(can't)g(main)o(tain)g(order)g(in)h(a)f(classro)q(om)g (b)o(y)g(using)h(grades)f(as)f(a)0 1519 y(w)o(eap)q(on,)13 b(from)g(her)h(o)o(wn)f(teac)o(hing)h(exp)q(erience.)21 b(She)14 b Ff(knows)j Fg(that)c(she)g(herself,)i(at)e(IFSMA)o(CSE,)g(w)o(orks)f(hard)0 1615 y(and)19 b(learns)g(rapidly)h(and)f(deeply)h(in)g(an)f(atmosphere)f (without)h(grades,)g(and)g(that)f(if)h(w)o(e)f(ga)o(v)o(e)g(grades)h(she)0 1710 y(w)o(ould)13 b(b)q(e)h(more)e(afraid)h(to)f(c)o(hallenge)i(herself.)20 b(But)13 b(she)g(also)g(\\kno)o(ws")e(that)h(studen)o(ts)h(w)o(on't)e(learn)j (an)o(ything)0 1806 y(if)20 b(y)o(ou)e(don't)h(force)g(them)g(to.)31 b(That)18 b(last)h(bit)h(of)f(kno)o(wledge)g(do)q(es)h Ff(not)j Fg(come)c(from)f(her)i(exp)q(erience;)j(she)0 1901 y(learned)16 b(it)g(from)e(gossip)h(in)h(the)g(sta\013)e(ro)q(om,)g(or)h(during)h(her)f (training,)h(or)e(from)h(the)g(newspap)q(er.)91 2002 y(In)23 b(designing)h(IFSMA)o(CSE)e(w)o(e)g(knew)h(from)e(the)i(b)q(eginning)h(that)e (the)h(tec)o(hnical)g(con)o(ten)o(t)f(and)h(the)0 2097 y(p)q(edagogic)18 b(con)o(ten)o(t)e(w)o(ere)h(equally)h(imp)q(ortan)o(t.)25 b(Just)17 b(as)f(w)o(e)h(teac)o(h)g(the)g(tec)o(hnical)h(ideas)g(not)e(b)o(y)h (lecturing,)0 2193 y(but)c(b)o(y)g(participan)o(t)h(exploration,)g(w)o(e)f (also)g(feel)h(that)e(w)o(e)h(can)g(teac)o(h)g(our)g(p)q(edagogic)h(ideas)g (b)q(est)f(b)o(y)g(example.)0 2288 y(Still,)19 b(w)o(e)f(\014nd)g(that)e (it's)i(imp)q(ortan)o(t)f(to)f(mak)o(e)h(explicit,)j(rep)q(eatedly)l(,)f (that)e(w)o(e)g(are)g(mo)q(deling)i(an)e(approac)o(h)0 2384 y(to)d(teac)o(hing)g(and)h(learning)g(that)f(will)h(w)o(ork)f(for)f(the)i (participan)o(ts)f(and)h(their)f(o)o(wn)g(studen)o(ts.)20 b(Man)o(y)13 b(of)h(them)0 2479 y(\014nd)k(our)g(metho)q(ds)f(congenial,)i(but)f(man)o(y)f (are)g(v)o(ery)g(reluctan)o(t)h(to)f(apply)h(their)g(o)o(wn)f(observ)m(ation) h(of)f(their)0 2575 y(o)o(wn)f(learning)j(to)d(the)h(situation)g(at)g(home.) 25 b(This)18 b(fear|a)e(strong)g(w)o(ord,)h(but)g(appropriate|is)h(another)e (of)0 2670 y(the)f(di\016culties)j(with)d(whic)o(h)h(w)o(e)f(are)g(still)i (struggling)e(at)g(IFSMA)o(CSE.)952 2779 y(14)p eop %%Page: 15 15 bop 0 45 a Fh(Ac)o(kno)o(wledgmen)o(ts)91 141 y Fg(The)13 b(IFSMA)o(CSE)g (facult)o(y)f(are)h(all)h(profound)f(think)o(ers)g(ab)q(out)f(b)q(oth)h (education)h(and)f(mathematics,)g(and)0 236 y(m)o(y)g(w)o(ork)f(with)i(them)f (has)g(b)q(een)h(a)f(terri\014c)h(in)o(tellectual)i(stim)o(ulation.)k(The)13 b(p)q(eople)i(whose)e(insigh)o(ts)h(are)f(most)0 332 y(visible)k(in)f(this)g (pap)q(er)g(are)f(Al)g(Cuo)q(co,)g(Ed)h(Dubinsky)l(,)g(P)o(aul)f(Golden)o(b)q (erg,)h(and)f(Uri)h(Leron.)0 455 y Fh(Bibliograph)o(y)0 541 y Fg(Ab)q(elson,)k(Harold,)e(and)h(Gerald)g(Ja)o(y)f(Sussman.)g Ff(Structur)n(e)i(and)g(Interpr)n(etation)e(of)i(Computer)g(Pr)n(o)n(gr)n (ams)p Fg(,)91 595 y(MIT)15 b(Press,)g(1985.)0 682 y(Akl,)g(Selim.)i Ff(Par)n(al)r(lel)e(Sorting)h(A)o(lgorithms)p Fg(,)e(Academic)j(Press,)d (1985.)0 768 y(Akl,)h(Selim.)i Ff(The)f(Design)f(and)i(A)o(nalysis)d(of)i (Par)n(al)r(lel)g(A)o(lgorithms)p Fg(,)e(Pren)o(tice)i(Hall,)g(1989.)0 855 y(Akl,)f(Selim.)i Ff(Par)n(al)r(lel)e(Computational)i(Ge)n(ometry)p Fg(,)e(Pren)o(tice)h(Hall,)g(1992.)0 941 y(Dubinsky)l(,)g(Ed.)e (\\Constructiv)o(e)h(Asp)q(ects)g(of)g(Re\015ectiv)o(e)h(Abstraction)f(in)h (Adv)m(anced)g(Mathematical)f(Think-)91 995 y(ing,")g(in)h(L.)f(P)l(.)g (Ste\013e)g(\(ed.\),)g Ff(Epistemolo)n(gic)n(al)g(F)m(oundations)g(of)i (Mathematic)n(al)f(Exp)n(erienc)n(e)p Fg(,)e(Springer-)91 1050 y(V)l(erlag,)h(1991.)0 1136 y(Golden)o(b)q(erg,)g(E.)g(P)o(aul.)g Ff(Sp)n(e)n(cial)g(T)m(e)n(chnolo)n(gy)g(for)h(Sp)n(e)n(cial)f(Childr)n(en)p Fg(,)f(Univ)o(ersit)o(y)i(P)o(ark)e(Press,)h(1979.)0 1223 y(Golden)o(b)q (erg,)f(E.)f(P)o(aul,)g(Susan)h(Jo)g(Russell,)h(Cyn)o(thia)e(J.)h(Carter,)e (et)h(al.)h Ff(Computers,)h(Educ)n(ation)g(and)f(Sp)n(e)n(cial)91 1277 y(Ne)n(e)n(ds)p Fg(,)f(Addison-W)l(esley)l(,)18 b(1984.)0 1364 y(Golden)o(b)q(erg,)d(E.)g(P)o(aul,)g(and)h(W)l(allace)g(F)l(eurzeig.)g Ff(Exploring)f(L)n(anguage)h(with)h(L)n(o)n(go)p Fg(,)d(MIT)h(Press,)f(1987.) 0 1450 y(Golden)o(b)q(erg,)h(E.)e(P)o(aul.)h(\\Seeing)i(Beaut)o(y)e(in)h (Mathematics:)e(Using)i(F)l(ractal)f(Geometry)f(to)h(Build)i(a)e(Spirit)h(of) 91 1505 y(Mathematical)g(Inquiry)l(,")h Ff(Journal)g(of)h(Mathematic)n(al)f (Behavior)p Fg(,)g Fh(8)p Fg(,)f(169{204,)d(1989.)0 1591 y(Harv)o(ey)l(,)19 b(Brian.)h Ff(Computer)h(Scienc)n(e)e(L)n(o)n(go)h(Style,)g(volume)h(1:)f (Interme)n(diate)g(Pr)n(o)n(gr)n(amming)p Fg(,)f(MIT)h(Press,)91 1645 y(1985.)0 1732 y(Harv)o(ey)l(,)15 b(Brian.)g Ff(Computer)i(Scienc)n(e)e (L)n(o)n(go)g(Style,)g(volume)i(3:)f(A)n(dvanc)n(e)n(d)f(T)m(opics)p Fg(,)f(MIT)h(Press,)g(1987.)0 1818 y(Harv)o(ey)l(,)f(Brian.)g(\\Sym)o(b)q (olic)i(Programming)d(vs.)h(the)h(A.P)l(.)e(Curriculum,")j Ff(The)f(Computing)g(T)m(e)n(acher)p Fg(,)e Fh(18)p Fg(,)i(5,)91 1873 y(F)l(ebruary)l(,)g(1991.)0 1959 y(Zazkis,)h(Rina,)g(and)g(Uri)g(Leron.) g(\\Implemen)o(ting)h(P)o(o)o(w)o(erful)e(Ideas|The)i(Case)f(of)f(R)o(UN",)h Ff(L)n(o)n(go)g(Exchange)p Fg(,)91 2014 y Fh(8)p Fg(,)f(8,)f(April,)j(1990.) 952 2779 y(15)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF