ࡱ> ]_^nK7iVZ-1>PNG  IHDRPPLTE@ @ @@@@@``@``@@@@ @ @ @ @@ @ @ ` `@ ` ` @ @ @ @ @@@@@@ @ @@ @ @@@@@@@@@@`@`@@`@`@@@@@@@@@@@@@@@@@@@@``@``` ` @` ` `@`@@`@`@````@``````@````@````@````@``@ @ @@@@@``@``@@@@@ @ @@@@@``@``@@@@@ @ @@@@@``@``@@@@@ @ @@@@@``@``@@@@0bKGDH cmPPJCmp0712Hs3IDATx^]rHmW 0400XL xTYp%j=2ݲj,Wh>}n߾G @1|xi,x̸G\f/;H -1AIl{6TdS#mW$f% ĖϲRGB^{foPu `f6@W^>3dIw\Yj.~;q-Oae0#KfƠ* .W('6'짉y'(;}˲ة3z{Y!}OOOa35Bp&eO[bEc 􆤦,w\&΋8Y*L_NfP.H(claw8oD-s 308C (6i/"mjV2l`_۩{:sbkmĆe$,c^ t}oN7< ^^be8bIlxE<_17)%4k30CWGce+s\ f\,+f\6;1r;RKS3Xe,`v0.0"W\ry'бW3pV˝ sHbӸg_8s- aY̨as bk0~pGN%^K8}}毑a) e!Kp7B9@bۚch?2tIᆯ, Y,hE.~?J<#CΉ2T2G&f+('eYdb >cA[aY ƂuF_=[ ;6עs,_70m@bpka_fQe:ˌ[Ŕ*jg!P歄:ܑƌ^5 |[z2̅J{S}w C>;ԬVjwzmef~ٮ'iY#evK:*0f.+q/>I⁊$M'\)*#$Vl\D~P|!rUc߲2a:K_VVky _дuzQ {8&3⻠Q#$աAEg)tb'YM]H8o=>p]6h:E[) G4-@/X]"r CB\x;ʌtEx3iXfȊSH((:kMKHz/"Z 9{pJ y/P}㞠 ,O}@ǽA3yPqmpV`Y zYt~\`  e ʴ#:k~?qo]5_ǽB<ү#L-{1XP^?n Rnw؂/~h7? [Z'v]HD_fGB=AD1u/z@򇱊f}AF#'@|% eY7? L)б=1 Vnvr7?Xб=8(2(NcٱۺYqP&;)ھh"䭐l eh_b?=!wce]iqPFIf̓;}uǽB HU,jgkBmqP(o[0q|7?ʨ˼-bHA#lI@?~ǽAuB,-6P Dzc0'(L6 Ap_01ƺ{Kl|7?ʰf|D/EGzȭ{2jFySPUqoP6??0VcEq_Pv}z:G6/({7ؽT'|cGHqq_P%U(68շ#-9$Ѻ;`g~w+YC@E_w0!uvt5U!YP?ـ@%NhEYM'/P<4^ݑ+Y4 Q@ 5jŢ[FѴ5E} !eS b JF2R?b7d2ՖŔ]O_"<[qi ~6\NUWuÒ"\65i.ʸr(tblWƎPNFZNgMr((`EDFt󒆛hu~ޏQBg$pmjg׬(i'QDFW/t|/]Il`ķGoل 4,k c4 W( sw2zHl@]TVQf_1x.o9~,@$^JbgM(GEE(ٲMSV0, M94l|@\c/TbAlUhmfI0N2^T/벷9 m`i)s9xzEfw#xv"4}rdr-JÏ G!fjeYwv"{<;)##'}i Ko$/D*Ӑ[zף YbAޣ;Y[fB|`vMfx8g_$ka]",0ʵ˥+ dFt9Qv1 ]ɒKlpZ%[< lj~`jݲ|,uYv 7QGVD2<$AW6,.Mq-ˏTH>A 5w#0Ӿ>C.Z]_Q~Y(e%ǸzHEݻ#j esݯҺKqx477f([6|.cY.393"ó,^ n(P> lDD!#/IfAFձe[~YHfs0X8D}("fjtm\>d1]4B@nG9|q*9<`b:3A%H$1)PF? 6p+cAGcFΐ,=fXP13Abky"_Q\ qAcExc.OA\P.e]=32d5Qf@dEy,(cbffPb'зyw]`yQp"(RY=>x Zp,'{Ժ=|>)ɪI#VxELbFt]ɺ\PgaK!)z_EZnݍ~UzJKlx%_4.G}F#*G.7(+$B\yYqƱ Ib'j_}5U\T,^Y9ݭoP#:RVG'sֳuW Hr1-BsGANzMVExY9vzIe#u R`g9 8D_<:}(\Dh#I3KҝY0:pQe<xwd/lE<|{P0ˣŤ# EYȯͭ&؊bfI;{WN(L:;>xAoQ[b3HJ3LQW\"(" <ʕweY:!"r9i'oGfR輢Ds= V:E:CdbBQe@qLn_|X%v,58&歎r輢EP"!c>6UG9t^Q$o2c$y+v7t^QH& 2AT|c,ʡ_QWnɅ *C^#S8ZBA=]9K(B(3icXC! V}Ahr輢< 3d쳶 ,[C!Lv˞ "k;t^Qʴ{20e#_4}Eޟ-,pҝiݻk&'Nd/o( Ja/Ń<&2E-5vL/ٱ?_輢<3VqBSV;)8! DE*KC!,Q4rwFW2egip(+C@\Œ8)2O)Ut_༢<U9訠\ W2 &mrRн\r輢<L6;P .PjǎcH@96,"(7LcEnuk%~S%?+ی-G^KZ _&5w#'讲@\8"qQiuR! }c(v5$QD욡+@Su!7fU~LbҔK9UQ ʹ5K"ʗeT<1=]m6*l^ {4DwEy,(#0|_7_S:r TGrΕ{ |7+,͎#1rN TebZV'S.GQjB;r4 :!ȯo/?%r`rχ< -e42K-ԗ |rQNV8eie'Sߒ]ՍZbE(x2}9˛C}PWQ6\e(P$*E9N:{5 %b3^^bˈ#zr$(Lm,Tb_bJ>)|:8[p]Q4~pGIK K0+ʑ$^'ʯ\ zWWH'(&0LF\ =JHl*իUQDR$݀Ч~EP95UQkc( <.V4DRTlVGra,}YYczk\Q;8K:NC-(O]8"-ϫ]EY .tg;*)(TGjQh1It_q2+m8‰繸]:_֗ CчφQ>YF?ς}PEҿcKcCm<SV}ch QDry܏yyt5Bfa.rh@A"Uw=q?]4t9)  *[?§Yp|,؀8eb~ (s \kޭCuF4:H{2E?tpnK,!O:ai>7:McLw'0 Wp2 0ǹ~}8ǖeT % tYFw K8*X 3[hjj|Ex }+7[tZ/)tLb@k -,!sQuy}ﹹ2QPKR0g1柡py}x:;S\7bV fF*~Eo(4#,0KIr9~QPf\e$e20OWF2cJ-ڪ0A;?Ly..iOhǽD |Y7(wg"ON}gV]> e,.8q[nvt }x1)P^b/st_,Ǔh2|e\?X4M̳Sn+72y(O&>p*%#0Ǹ2eI>fDY ͭcn-Vw;JiLB$H6y\@;)lI5;D){[ݓ|2H<ú!GXi^)P11K<9fkWY|>X'zDkQXEcD7E ,;,cu\ 4=_$k=S2~HHdb]%ȶ8end<%'RˋrQ^NѕBdX(Q,EU)9fY fWQQICk(72UA!ǎ//Q;ck(žCDb *qe T/Y9'CNL3+e|@`/EY[ lYJۘ8pq_BTreR~5a  $mh^xX2 4qZq-{Ipပ;ko> e){+j׊Y{Rw((c=A`)"Sk#PĦZ҄ _?ϼ_+i]lcQX([%|Ɓzxp\tkcEk)Kf x+cI $,]w [?])yT$+`Ͳl*Yx>j(/ ><8h72qdwD.WznDN84bE7tdH+G@Y"Ы 6/܅vKQ5rg!_Y)Z(ŢBh:_mmFOFdQ-+n#0, / y 3p8H^X*Ӑ 3x>([ / !}k Qz͓`I ?oDDPRiN〟Tׇ *,97r=1v@XM{,bp5W(WṵN_ǂ 8;aX\8C%o & ;YQUx)>-<ܳ~ǖ@LY\Koߟ9]߿Z2NFa&~_}q(1m\LQVeuNgY)c_p]dIX(@E=h"\Xi7{'!rPWEkeW 8*ʑP`^H{~!'ʊrpmɣ373bi\X%i &Cb35>$>aEy46R{bdrlDh)I",HZzgh'{ԚM]"Z8[ۙAC]ع@+ۦoQŒ#b#s֕:cV!AšZ8"?` .K]ŽB'1j]ĖC:]TcWЊ>(@FB"(&NdC˓\ĢY(@SdH'Txed8jí ]JX/Ĕ1<@u3uzr$ޑGR⓲tbȇ,&Ϻ|Yf#S%v$ˏ(u,QHǝl @+OTDϬ;Z+"ɞ(eXFx+K=E)ʽA  R[E9(v"Gj8Мv҈1cS45ko̽|\W2X(e*nĮ&wkAc=j/Eyl($vrL7VUkTK$c%寙c" ]{.cw#2PVekVwMfH6v e77 iz2,_٩Y'Wǃ2[.6; !&"1$bYLv˾1+N v/[Fs _Q%v$WY ߟQ-(F%vQ4KNd//\߾s+N8Q{"H\2m avln^B$ ʌUAfpc(.(Ή2TDٳWiwroP9Ae؉j} b+Xf,f RG}\'Nqq/:*裲SYQ4 $9ng7̊rQt&58Ji2pEjTnafE9(eJ/?/(eY׫(ǟo8eir ѯyX8C:Ey,jH,5C5\P.+~g5YP=KF"]̤/&M鸓_UbEbր/JW+Wǂ5&]͋a(exuc5?ZQ 9W)݀ϯ 3T/4SGWBS2f.ɔˣ2s^~ʷQǃ2^Hl,+r2, S_.K%8GWeIԷt:s}e,o֌erZ72Z4B;6\e(P$#Ey (Ï$%68*Ϧ(Ff2BlUm`9ձGcC0/o^&I+tUH{{($6Ư(zI{(G2P.)ϵfվF2Ydb >5Kh_^ULCC+¨\`/N ]Q 8,~&\`ǜժ(O0Sb5I ;W0+#Bju1D=u4+Vd/:x!ǂ˧`.NfvF:³j l:ejdؚ(~|<\۳߻XIlm@yI?ۥqʚۄɼod>Ak~8(koӀNfKq\a?"{fr:Ac,!{8\F.^YP\.K!.>'\[W>x+4U߶ro۽06 .ko3ʖеvaۭ%Z[˂B$6PrU;Cn+u8~|8Ȧy [p Q&;|(wADmPv4*ˇB`vyDZ[2v4 Dbko.; 1>xCB/ׯV^[F iK0;aSz:tly=mF>),Oq2xZg" 4qZq-{$x`h8)}{Z¾^BGLǔ ˚.# hf*b޽<4_.D%%`l,a˚{IXM%68>(5Vq?H,= sރY/uұkC0CfvQ5؂rYִ6JKdyJ8R ܃YQ!؆շWKdUH\|q**`|*zjY~k1gAi#sNG a׿' *PtQvDޚ~2E,?u}/C2tvroeʲ8~Zb4}/޸DQ$6 ep'w%Tdv1O׺KtOqWED]IcӁ TMeN.O7PU=Sъ{t`[BDIƘei`;6S.WnQVORvA\jh(clk2Q)ʵY6 nR20qr>Fo?ųP jLVBC$zx(+DPO!.'3 Ȗff:  w $y[gD6Q/\T0|aIl8+%2-wо:ծ(6=ˆK2vRҒ[XC/}}ޢ([Kx22˨k.Y% EA8j~*wU.z!/.s'%u%NH,N*ZzCڵbW'2Wka_Et=؄R|gU9 NC2\Ρue. 5ul.۝վsGc DAI־lݼ"nfq8|ܯQ"_\ ,ѪګCY/e4%|01.]o6'%FǪ(| h"qv`=('"ڊ_;/c3ly_97 {@h(j#7ŦχՁ+^h`=Ϳ(^bC'd$9 (P $CX7 e{H }ba+>W\=,pruj$ubk/EjҽgߐҼ]_>U k_;D2sie_5%,|&ʨ׺gl˗`n!oƒ.B/k|;6+_~Qw]]\|y;}}}h7Ő9t3{FGzC绳:)aCárPp輢^bC!pmq)8t dr+Bá_(sX:6Pp=N喳(?:o3ˮ%r;Cá 8v v(C[ 3?::v+bPp|7>,V[W CáP__מWJb3~|םvR+ ΫV1?:&X*IlVnj6"E ʡkQ(C")aCá.0ʡyE#ЁyݺWQnj6c2]b\/KGzz#Rp-վl cIENDB`( / 00DTimes New Roman bbv 0b( 0?DComic Sans MSn bbv 0b( 0?B DTahomaans MSn bbv 0b( 0?"0DWingdings MSn bbv 0b( 0? a.  @n?" dd@  @@`` *"Lh $     ,b$iVZ-1>S7 0e0e     A@  A5% 8c8c     ?1 d0u0@Ty2 NP'p<'pA)BCD|ES"@8uʚ;2Nʚ; g4TdTdv 0bppp@ <4!d!d` 0b b<4dddd` 0b bg4CdCdv 0bp@ pp<4BdBd` 0b b? %" BugsWorld Project2The Game The Simulator The Language The Translator 6The Game: It s a BugsWorld!  The Simulator (Simulator Continued& MOne server, multiple clients and displays Server keeps track of world, processes client requests, resolves conflicts Client simulates creature behavior for all creatures of one species Display shows current state of world plus some statistics about the simulation Each process can run on a different computer (distributed simulation)XNZ*E> The Language: BL6The behavior of each species is determined by a program in BL Primitive instructions: move, turnleft, turnright, infect, skip Control structures: IF-THEN, IF-THEN-ELSE, WHILE-DO Defining new instructions: INSTRUCTION-IS Conditions: test whether next cell is empty, friend, enemy, or wall (plus true and random)77 An Example&Language Continued& Precise syntax Case sensitive Matching ENDs Comments Identifiers start with  a .. z , A .. Z followed by any of  a .. z , A .. Z , 0 .. 9 , - &AOAO The Translator*Translator Continued&  What You Will DoBuild the translator Implement abstract program component (Lab#3, Closed Lab #4) Implement parser extension (Lab #4) Implement code generator extension (Lab #5) Implement tokenizer component (Lab #6) Complete the client Implement interpreter (Closed Lab #6)T&& ` 33PP` 3333` ___MMM` 13` 333fpKNāvI` j@v۩ῑ΂H` Q_{>?" dd@(?n<d@ `7 `2@`7``2 n?" ddH@ f @`PR    @ ` ` p>> N F   (     <, " @   T\Z d" @   <z "U_ @   TL} d">& @   N "P @   < "{ @   C x ?d?"mU @   60G  "`   T Click to edit Master title style! !$  0   " "   RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6L  "@   \*  6]  "@`    ^*  6a  "`   ^*B  s *޽h ? 13 321s   #  0 (  T +  "+bb P@ # "Dwoh  s *"PP  Bd" P@bb P 0  # "Nyh  s *"P    Bd"P 0 z   <" a*h   s *"    f?d?"+)   <W ?"pP  T Click to edit Master title style! !   0Z " `    W#Click to edit Master subtitle style$ $  6^ "`p   `*  6L "`p   b*  6 "`  b*B  s *޽h ? 130 @:(    0$ P    \*   0X     ^* d  c $ ?    0  @  RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6  `P   \*   6  `   ^* H  0޽h ? ̙33   0(  x  c $'  `   x  c $l(   "   H  0޽h ? 33  P .(   r  S  `   |  c TA0G:\321-2\docs\world.gifaH  0޽h ? 3333     `$~ (  $r $ S  `   v $ N ??yyL $ c $8ct HL" $ c $8c g  L2  $ c $8cj * L  $ c $8cg = L $ c $8c+~ L" $ c $8c} E ^ $ 68c | $ T8c?P& | $@ T8c?(! | $ T8c? _ | $ T8c?   $  `$ ??d  8Client $ T' ?"d D  8Server $  `d* ??Y y 8Client $  ` ?? ,  8Client $ T, ?"K?   9Display $ T ?"4 4 (T  9DisplayH $ 0޽h ?_ $$$ $$$$$ $ $$$ $$ 3333  p,$(  ,r , S 6 `   r , S 87  "  H , 0޽h ? 3333  0$(  0r 0 S P  `   r 0 S     "   H 0 0޽h ? 3333  kc4(  4r 4 S  `   R 4  `{ ??v  PROGRAM TryToGuess IS INSTRUCTION FindObstacle IS WHILE next-is-empty DO move END WHILE END FindObstacle 4  `,{ ??v U0 _+BEGIN # TryToGuess WHILE true DO FindObstacle IF next-is-enemy THEN infect ELSE IF next-is-wall THEN turnleft ELSE # next-is-friend skip END IF END IF END WHILE END TryToGuess,,H 4 0޽h ? 3333  8$(  8r 8 S { `  { r 8 S X{  " { H 8 0޽h ? 3333  @8D(  Dr D S 4{ `  { } D  `5{ ??@  PROGRAM TryToGuess IS INSTRUCTION FindObstacle IS WHILE next-is-empty DO move END WHILE END FindObstacle BEGIN # TryToGuess WHILE true DO FindObstacle IF next-is-enemy THEN infect ELSE IF next-is-wall THEN turnleft ELSE # next-is-friend skip END IF END IF END WHILE END TryToGuess  D T$7{ ?"   {I<20, 15, 20, 6, 7, 0, 5, 2, 12, 12, 3, 5, 18, 8, 17, 1, 5, 18, 4, 5, 0>JJ D N8c?" H D 0޽h ? 3333   _ W < (  <r < S dC{ `  { v < N ??;9;8 ` @  <@@ @`   <p`   < TlE{ ?"}   BCode Generator  < T 8c?"@`  @ ` P   <`  < TI{ ?" l @  :Parser  < T 8c?"` P @ ` P   <` P  < TM{ ?" @  = Tokenizer    < T 8c?"` P B < ZD8c?"  B < ZD8c?"P  B < ZD8c?" p B < ZD8c?" @  < TR{ ?"p  X"string of characters (source code)## < TS{ ?"p   Fstring of tokens < T<[{ ?"q   Fabstract program < Tx_{ ?"p  V string of integers (object code)!!H < 0޽h ? 3333  H$(  Hr H S e{ `  { r H S Pf{  " { H H 0޽h ? 13rDP k1y+ `c3Y5GA3CEI0fQK_  a( / 00DTimes New RomanS Oh+'0 hp   , 8DLBugsWorld Projecte Paolo Bucci8C:\WINDOWS\Application Data\Microsoft\Templates\321.pot Paolo Bucci8olMicrosoft PowerPointn D@CJ @U1@sNG;   !&@ &&#TNPP 2OMi & TNPP &&TNPP   @ - "-- !@-- "---- !'%<#--- - &C<_c&--- $C<K<KcCcx- $K<S<ScKcA- $S<[<[cSc- $[<_<_c[c---&& --- !($_---- &M_k&---- $M_U_UMϦv- $U_]_]U}d- $]_e_e]- $e_k_ke---&& & Y:|&--&&2- $;Y 6 >;a1- $;a > F;i.- $;i F N;q)- $;q N V;y#- $;y V ^;- $; ^ f;a- $; f n;< - $; n v;- $; v |; $; | |;&&& "- & $ Y |:|:Y&w8b&-&& &&-&&};Y &&2- $;Y 6 >;a1- $;a > F;i.- $;i F N;q)- $;q N V;y#- $;y V ^;- $; ^ f;a- $; f n;< - $; n v;- $; v |; $; | |;&- --&& --- !X3@--- &%ux&--- $%u1u1x%x $1u=u=x1x $=uIuIx=x- $IuUuUxIx $UububxUx- $bununxbx $nuzuzxnx- $zuuxzx $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $u u xx- $ uux x- $u$u$xx- $$u0u0x$x- $0u<u<x0x- $<uHuHx<x- $HuTuTxHx- $Tu`u`xTx- $`ululx`x- $luxuxxlx- $xuuxxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $uuxx- $u u xx- $ uux x- $u"u"xx- $"u.u.x"x- $.u:u:x.x- $:uGuGx:x- $GuSuSxGx $Su_u_xSx- $_ukukx_x- $kuwuwxkx $wuuxwx- $uuxx $uuxx $uuxx- $uuxx $uuxx $uuxx- $uuxx---&& &L;& &;& --ta-- @BComic Sans MS- .!2 dgBugsWorld Project-  .--c-- @Wingdings0- . 2 jn.@BComic Sans MS- .2 The Game .@Wingdings0- . 2 jn.@BComic Sans MS- .2 The Simulator   .@Wingdings0- . 2 jn.@BComic Sans MS- .2  The Language .@Wingdings0- . 2 @jn.@BComic Sans MS- .2 @The Translator  .-- "System-&TNPP &Root EntrydO)p͛¡F`PicturesS7Current UserASummaryInformation(MD  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLeNOPQRSTUVWXYZ[\otbcdifghmjklunpqrsavwxyz{ #_ 0Paolo BucciPaolo Buccig Servicese ՜.+,0    $ ROn-screen ShowThe Ohio State UniversityWhf  Times New RomanComic Sans MRomanl<bbv 0b( 0?DComic Sans MSnl<bbv 0b( 0?B DTahomaans MSnl<bbv 0b( 0?"0DWingdings MSnl<bbv 0b( 0? a.  @n?" dd@  @@`` *"Lg $   ,b$iVZ-1>S7; 0e0e     A@  A5% 8c8c     ?1 d0u0@Ty2 NP'p<'pA)BCD|ES"@8uʚ;2Nʚ; g4XdXdv 0brppp@ <4!d!d` 0bm<b<4dddd` 0bm<bg4CdCdv 0bp@ pp<4BdBbbv 0b( 0<DComic Sans MSnSbbv 0b( 0<B DTahomaans MSnSbbv 0b( 0<"0DWingdings MSnSbbv 0b( 0< a.  @n?" dd@  @@`` *"Lh $     ,b$iVZ-1>S7 0e0e     A@  A5% 8c8c     ?1 d0u0@Ty2 NP'p<'pA)BCD|ES"@8uʚ;2Nʚ; g4XdXdv 0brppp@ <4!d!d` 0bSb<4dddd` 0bSbg4CdCdv 0bp@ pp<4BdBd` 0bd` 0bm<b? %" BugsWorld Project2The Game The Simulator The Language The Translator 6The Game: It s a BugsWorld!  The Simulator (Simulator Continued& MOne server, multiple clients and displays Server keeps track of world, processes client requests, resolves conflicts Client simulates creature behavior for all creatures of one species Display shows current state of world plus some statistics about the simulation Each process can run on a different computer (distributed simulation)XNZ*E> The Language: BL6The behavior of each species is determined by a program in BL Primitive instructions: move, turnleft, turnright, infect, skip Control structures: IF-THEN, IF-THEN-ELSE, WHILE-DO Defining new instructions: INSTRUCTION-IS Conditions: test whether next cell is empty, friend, enemy, or wall (plus true and random)77 An Example&Language Continued& Precise syntax Case sensitive Matching ENDs Comments Identifiers start with  a .. z , A .. Z followed by any of  a .. z , A .. Z , 0 .. 9 , - &AOAO The Translator*Translator Continued&  What You Will DoSb? %" BugsWorld Project2The Game The Simulator The Language The Translator 6The Game: It s a BugsWorld!  The Simulator (Simulator Continued& MOne server, multiple clients and displays Server keeps track of world, processes client requests, resolves conflicts Client simulates creature behavior for all creatures of one species Display shows current state of world plus some statistics about the simulation Each process can run on a different computer (distributed simulation)XNZ*E> The Language: BL6The behavior of each species is determined by a prPowerPoint Document(DocumentSummaryInformation8ogram in BL Primitive instructions: move, turnleft, turnright, infect, skip Control structures: IF-THEN, IF-THEN-ELSE, WHILE-DO Defining new instructions: INSTRUCTION-IS Conditions: test whether next cell is empty, friend, enemy, or wall (plus true and random)77 An Example&Language Continued& Precise syntax Case sensitive Matching ENDs Comments Identifiers start with  a .. z , A .. Z followed by any of  a .. z , A .. Z , 0 .. 9 , - &AOAO The Translator*Translator Continued&  What You Will DoBuild the translator Implement abstract program component (Lab#2, Closed Lab #4) Implement parser extension (Lab #3) Implement code generator extension (Lab #4) Implement tokenizer component (Lab #5) Complete the client Implement interpreter (Closed Lab #6)T&&  H$(  Hr H S v `   r H S Dw  "  H H 0޽h ? 13ryaas  UaMu( / 00DTimes New STahoma Wingdings321BugsWorld ProjectThe Game: Its a BugsWorld!The SimulatorSimulator ContinuedThe Language: BL An ExampleLanguage ContinuedThe TranslatorTranslator ContinuedWhat You Will Do  Fonts UsedDesign Template Slide Titles Build the translator Implement abstract program component (Lab#2, Closed Lab #4) Implement parser extension (Lab #3) Implement code generator extension (Lab #4) Implement tokenizer component (Lab #5) Complete the client Implement interpreter (Closed Lab #6)T&&h     P$ (  $r $ S k `   L $ c $8ct HL" $ c $8c g  L2  $ c $8cj * L  $ c $8cg = L $ c $8c+~ L" $ c $8c} E ^ $ 68c | $ T8c?P& | $@ T8c?(! | $ T8c? _ | $ T8c?   $  ` ??d  8Client $ T  ?"d D  8Server $  ` ??Y y 8Client $  ` ?? ,  8Client $ T ?"K?   9Display $ T`T ?"4 4 (T  9DisplayH $ 0޽h ?_ $$$ $$$$$ $ $$$ $$ 3333ru q eu