1. Introducing E! version 1.0
- Posted by Roderick Jackson <rjackson at CSIWEB.COM> Jun 04, 1999
- 683 views
Yeehaw! Here's something I think you all are going to love! I actually got this idea a few weeks ago, but only recently finished implementing it. Basically, E! is an interactive Euphoria interpreter. That's right... you get a DOS screen and a prompt, and can enter and execute Euphoria commands one at a time. Even use it in a Win95/NT window as an overpowered calculator if you like. No, I didn't actually write an interpreter from scratch. I actually "cheated", since it uses the standard public edition (or complete, if you own it) version of Euphoria released by RDS. Once you take a look at it and grasp the concept, you'll see how I managed to write it in *very* little time. So how does it work? -- Simply run the E!.EX file with your copy of Euphoria. It needs no include files or libraries, and should be completely 2.0 compatible. -- At the prompt, enter any Euphoria command you like. Note that illegal commands will obviously crash things, and that "x += 1" won't work if you're running on version 2.0 of Euphoria. (You will also probably want to stay away from graphics commands.) -- When defining a function, procedure or type, you can use multiple lines. The program will cache everything until the "end" statement, then execute the declaration at once. An 'f', 'p', or 't' will appear before the prompt to indicate that input is being cached. There is no need to declare the routines as global... all of them are automatically "globalized". -- When constructing a "while" or "for" loop, or an "if" statement, you can use multiple lines. Nesting is taken into account, and all input is cached until an "end", etc. is entered at the outer level. A number will appear before the prompt, indicating the level of nesting that is currently active. (In other words, if you enter "if (x) then", a 1 will appear before the prompt. If you then enter a "if (y) then", a 2 will appear before the prompt. You will then need to enter "end if" twice in order for the first "if" statement to be complete.) Note that only the "end" is checked for, not the word that comes after it. This may be addressed in future versions. -- When declaring variables or constants, you MUST declare them as global if you want to make any use of them. This will be addressed in future versions. -- You may include any file by simply entering "include filename.e" -- To quit the program, enter "bye", and everything will shut down smoothly. (There's also an added "help" command, but right now it doesn't do anything.) -- All statements are logged. Once you're done with your session, you will find "LOG.E" in your C:\ (root) directory. It will contain all of the statements and comments you entered in your last session (excluding "bye" and "help".) If you ever want to reenter all of your commands from the last session, simply rename the file to something else (like "oldlog.e"), then run E!, and make your first input: "include c:\oldlog.e". -- If you experience a crash, you may find an XQnnnnnn.e file in your C:\ directory, a temporary file used by the program. You can just delete it. -- Finally, the program can only handle 1,000,000 total inputs (an "include" or cached statement is considered one input). Hopefully, that'll last most folks for the entire length of their sessions... Tell me what you think. I'll try to work on enhancing it, but I still need to finish my 3D engine, so don't expect rapid development (no pun intended). Also, there's no documentation for it yet; I'll probably put the above comments into a text file and submit it with the code to the website this weekend. Have fun, Rod Jackson begin 600 e!.ex M#0H@+2TM+2TM+2TM+2T-"B M+2!%(2!V+C$N, T*("TM#0H@+2T@26YT97)A M8W1I=F4@175P:&]R:6$@26YT97)P<F5T97(-"B M+0T*("TM($-R96%T960@ M36%Y(#$X+" Q.3DY(&)Y(%)O9"!*86-K<V]N#0H@+2T-"B M+2!4:&ES('-O M960@92$N='AT(&9I;&4L#0H@+2T@(" @;W(@8V]N=&%C="!T:&4@875T:&]R M(&]F('1H:7,@<')O9W)A;2!A=#H-"B M+2 @(" @("!R;V1J86-K<V]N0&)I M9V9O;W0N8V]M+ T*("TM(" @(&]R(&-O;G1A8W0@=&AE(&-R96%T;W)S(&]F M($5U<&AO<FEA(&%T.@T*("TM(" @(" @(')D<T!H;W1M86EL+F-O;0T*("TM M#0H@+2T@5&\@9V5T(&AE;' @=VAI;&4@<G5N;FEN9RP@='EP92 G:&5L<"<L M('1Y<&4@)V)Y92<L('1H96X@<')E<W,@16YT97(N#0H@+2T-"B M+2TM+2TM M+2TM#0H-"F=L;V)A;"!C;VYS=&%N="!X<5-4051%345.5%]43U],3T<@/2 Q M9U]F;BP@>'%0<F]M<'0-"F=L;V)A;"!O8FIE8W0@('AQ=&5M< T*#0H@+2TM M"@T*(" @:68@*&, at /2 G("<I(&]R("AC(#T@.2D@;W(@*&,@/2 Q,"D@;W(@ M*&,@/2 Q,RD@;W(@*&,@/2 P*2!T:&5N#0H@(" @("!R971U<FX@,0T*(" @ M96QS90T*(" @(" @<F5T=7)N(# -"B @(&5N9"!I9@T*#0IE;F0@='EP90T* M("AS97%U96YC92!3=')I;F<I#0H-"B @(&EN=&5G97(@3 T*+2UT<F%C92@Q M*0T*(" @3" ](&QE;F=T:" H4W1R:6YG*0T*(" @=VAI;&4@*$P@/B P*2!D M;PT*(" @(" @:68@*'AQ5VAI=&5S<&%C92 H4W1R:6YG6S%=*2D@=&AE;@T* M(" @(" @(" @4W1R:6YG(#T@4W1R:6YG6S(N+DQ=#0H@(" @(" @("!,(#T@ M3" M(#$-"B @(" @(&5L<V4-"B @(" @(" @(&5X:70-"B @(" @(&5N9"!I M9@T*(" @96YD('=H:6QE#0H-"B @(&EF("AL96YG=&@@*%-T<FEN9RD@/2 P M*2!T:&5N#0H@(" @("!R971U<FX@4W1R:6YG#0H@("!E;F0@:68-"@T*(" @ M3" ](&QE;F=T:" H4W1R:6YG*0T*(" @=VAI;&4@*'AQ5VAI=&5S<&%C92 H M4W1R:6YG6TQ=*2D@9&\-"B @(" @($P@/2!,("T@,0T*(" @(" @4W1R:6YG M(#T@4W1R:6YG6S$N+DQ=#0H@("!E;F0@=VAI;&4-"@T*(" @<F5T=7)N(%-T M<FEN9PT*#0IE;F0@9G5N8W1I;VX@+2T@96YD('AQ5')I;5-P86-E<R H*0T* M>%-T871E;65N=$UE<W-A9V4@*"D-"@T*(" @<'5T<R H,2P@(EQN7&Y9;W4@ M:&%V92!U<V5D('5P(&%L;" Q+# P,"PP,# @<W1A=&5M96YT("(@)@T*(" @ M(" @(" @(" @(F5X96-U=&EO;G,N7&Y4:&%N:R!Y;W4@9F]R('5S:6YG($4A M7&Y<;B(I#0H@("!C;&]S92 H>'%L;V=?9FXI#0H@("!A8F]R=" H,"D-"@T* M96YD('!R;V-E9'5R92 M+2!E;F0@>'%$:7-P;&%Y36%X4W1A=&5M96YT365S M<V%G92 H*0T*#0H@+2TM+2TM+2TM+0T*#0IG;&]B86P@<')O8V5D=7)E('AQ M1&ES<&QA>45N=')Y("@I#0H-"B @(&-L96%R7W-C<F5E;B H*0T*(" @<'5T M<R H,2P@(D4A7&Y);G1E<F%C=&EV92!%=7!H;W)I82!I;G1E<G!R971E<EQN M7&Y#<F5A=&5D("(@)@T*(" @(" @(" @(" @(DUA>2 Q."P at ,3DY.2!B>2!2 M;V0@2F%C:W-O;EQN7&Y"87-E9"!O;B!T:&4@175P:&]R:6$@(B F#0H@(" @ M(" @(" @(" B<')O9W)A;6UI;F<@;&%N9W5A9V5<;F9R;VT@4F%P:60@1&5V M96QO<&UE;G0@(B F#0H@(" @(" @(" @(" B4V]F='=A<F4B*0T*(" @<'5T M<R H,2P@(EQN7&XB*0T*#0IE;F0@<')O8V5D=7)E("TM(&5N9"!X<41I<W!L M87E%;G1R>2 H*0T*#0H@+2TM+2TM+2TM+0T*#0H@+2T@;F5E9"!T;R!A9&0@ M8VAE8VMS('1O(&%U=&]M871I8V%L;'D@<')E<&5N9" G9VQO8F%L)R!T;R!V M87)I86)L90T*("TM(&1E8VQA<F%T:6]N<R H<W5C:"!A<R G:6YT96=E<B<L M("=O8FIE8W0G+" G871O;2<L("=S97%U96YC92<I#0IG;&]B86P@9G5N8W1I M;VX@>'%'9715<V5R26YP=70@*"D-"@T*(" @:6YT96=E<B @3F]T1&]N95=I M=&A);G!U="P@3 T*(" @<V5Q=65N8V4@5&5X="P@0VQE86Y497AT+"!R970L M('1E;7 L(&QO9W1E;7 -"@T*(" @3F]T1&]N95=I=&A);G!U=" ](#$-"B @ M('1E;7 @/2 B(@T*(" @;&]G=&5M<" ]("(B#0H-"B @('=H:6QE("A.;W1$ M;VYE5VET:$EN<'5T*2!D;PT*(" @(" @<'5T<R H,2P@>'%0<F]M<'0@)B B M/B B*0T*(" @(" @5&5X=" ](&=E=',@*# I#0H@(" @("!P=71S("@Q+" B M7&XB*0T*(" @(" @0VQE86Y497AT(#T@>'%4<FEM4W!A8V5S("A497AT*0T* M(" @(" @3" ](&QE;F=T:" H0VQE86Y497AT*0T*(" @(" @:68@*$P@/2 P M*2!T:&5N#0H@(" @(" @(" @+2T@8F%S:6-A;&QY+"!I9VYO<F4@96UP='D@ M:6YP=71S#0H at (" @(" @("!.;W1$;VYE5VET:$EN<'5T(#T@,0T*(" @(" @ M(" @<F5T(#T@>U1E>'0L("(B?0T*(" @(" @96QS90T*#0H@(" @(" @("!I M9B H3" ^(#DI('1H96X-"B @(" @(" @(" @(&EF("AC;VUP87)E("A#;&5A M;E1E>'1;,2XN.5TL(G!R;V-E9'5R92(I(#T@,"D@86YD#0H@(" @(" @(" @ M(" @(" H>'%7:&ET97-P86-E("A#;&5A;E1E>'1;,3!=*2D@=&AE;@T*(" @ M(" @(" @(" @(" @(" M+2!M87)K('1H870@=V4G<F4@:6X@82!P<F]C961U M<F4L('1H96X@:V5E<"!U;G1I; T*(" @(" @(" @(" @(" @(" M+2!W92!H M:70@86X@(F5N9"(-"B @(" @(" @(" @(" @('1E;7 @/2 B9VQO8F%L("(@ M)B!#;&5A;E1E>'0-"B @(" @(" @(" @(" @(&QO9W1E;7 @/2!497AT#0H@ M(" @(" @(" @(" @("!#;&5A;E1E>'0@/2 B(@T*(" @(" @(" @(" @(" @ M5&5X=" ]("(B#0H@(" @(" @(" @(" @("!X<5!R;VUP=" ]("=P)PT*(" @ M(" @(" @(" @(" @3" ](# -"B @(" @(" @(" @(&5N9"!I9@T*(" @(" @ M(" @96YD(&EF#0H-"B @(" @(" @(&EF("A,(#X@."D@=&AE;@T*(" @(" @ M(" @(" @:68@*&-O;7!A<F4@*$-L96%N5&5X=%LQ+BXX72PB9G5N8W1I;VXB M*2 ](# I(&%N9 T*(" @(" @(" @(" @(" @*'AQ5VAI=&5S<&%C92 H0VQE M86Y497AT6SE=*2D@=&AE;@T*(" @(" @(" @(" @(" @(" M+2!M87)K('1H M870@=V4G<F4@:6X@82!F=6YC=&EO;BP@=&AE;B!K965P('5N=&EL#0H@(" @ M(" @(" @(" @(" @("TM('=E(&AI="!A;B B96YD(@T*(" @(" @(" @(" @ M(" @=&5M<" ](")G;&]B86P@(B F($-L96%N5&5X= T*(" @(" @(" @(" @ M(" @;&]G=&5M<" ](%1E>'0-"B @(" @(" @(" @(" @($-L96%N5&5X=" ] M("(B#0H@(" @(" @(" @(" @("!497AT(#T@(B(-"B @(" @(" @(" @(" @ M('AQ4')O;7!T(#T@)V8G#0H@(" @(" @(" @(" @("!,(#T@, T*(" @(" @ M(" @(" @96YD(&EF#0H@(" @(" @("!E;F0@:68-"@T*(" @(" @(" @:68@ M*$P@/B U*2!T:&5N#0H@(" @(" @(" @("!I9B H8V]M<&%R92 H0VQE86Y4 M97AT6S$N+C5=+")W:&EL92(I(#T@,"D@86YD#0H@(" @(" @(" @(" @(" H M>'%7:&ET97-P86-E("A#;&5A;E1E>'1;-ETI*2!T:&5N#0H@(" @(" @(" @ M(" @(" @("TM(&5I=&AE<B!N;W1E('=E)W)E(&EN(&$@;F5W(&YE<W1I;F<N M+BX-"B @(" @(" @(" @(" @(&EF("AX<5!R;VUP=" ]("<@)RD@=&AE;@T* M(" @(" @(" @(" @(" @(" @=&5M<" ]($-L96%N5&5X= T*(" @(" @(" @ M(" @(" @(" @;&]G=&5M<" ](%1E>'0-"B @(" @(" @(" @(" @(" @($-L M96%N5&5X=" ]("(B#0H@(" @(" @(" @(" @(" @("!497AT(#T@(B(-"B @ M(" @(" @(" @(" @(" @('AQ4')O;7!T(#T@)S$G#0H@(" @(" @(" @(" @ M(" @("!,(#T@, T*(" @(" @(" @(" @(" @96QS:68@*'AQ4')O;7!T(#P@ M)V8G*2!T:&5N#0H@(" @(" @(" @(" @(" @+2T@96QS92!C;VYT:6YU92!N M97-T:6YG("AA<W-U;6EN9R!W92=R92!N;W0@:6X@80T*(" @(" @(" @(" @ M(" @("TM('1Y<&4L(&9U;F-T:6]N(&]R('!R;V-E9'5R92D-"B @(" @(" @ M(" @(" @(" @('AQ4')O;7!T(#T@>'%0<F]M<'0@*R Q#0H@(" @(" @(" @ M(" @(" @("!,(#T@, T*(" @(" @(" @(" @(" @96YD(&EF#0H@(" @(" @ M(" @("!E;F0@:68-"B @(" @(" @(&5N9"!I9@T*#0H@(" @(" @("!I9B H M3" ^(#0I('1H96X-"B @(" @(" @(" @(&EF("AX<5=H:71E<W!A8V4@*$-L M96%N5&5X=%LU72DI('1H96X-"B @(" @(" @(" @(" @(&EF("AC;VUP87)E M("A#;&5A;E1E>'1;,2XN-%TL(G1Y<&4B*2 ](# I('1H96X-"B @(" @(" @ M(" @(" @(" @(" @+2T@;6%R:R!T:&%T('=E)W)E(&EN(&$@='EP92P@=&AE M;B!K965P('5N=&EL#0H@(" @(" @(" @(" @(" @(" @("TM('=E(&AI="!A M;B B96YD(@T*(" @(" @(" @(" @(" @(" @=&5M<" ](")G;&]B86P@(B F M($-L96%N5&5X= T*(" @(" @(" @(" @(" @(" @;&]G=&5M<" ](%1E>'0- M"B @(" @(" @(" @(" @(" @($-L96%N5&5X=" ]("(B#0H@(" @(" @(" @ M(" @(" @("!497AT(#T@(B(-"B @(" @(" @(" @(" @(" @('AQ4')O;7!T M(#T@)W0G#0H@(" @(" @(" @(" @(" @("!,(#T@, T*(" @(" @(" @(" @ M(" @96YD(&EF#0H@(" @(" @(" @("!E;F0@:68-"B @(" @(" @(&5N9"!I M9@T*#0H@(" @(" @("!I9B H3" ^(#,I('1H96X-"B @(" @(" @(" @(&EF M("AC;VUP87)E("A#;&5A;E1E>'1;,2XN-%TL(FAE;' B*2 ](# I('1H96X- M"B @(" @(" @(" @(" @(" M+2!F;W(@<FEG:'0@;F]W+"!D;R!N;W1H:6YG M#0H@(" @(" @(" @(" @("!497AT(#T@(B(-"B @(" @(" @(" @(" @($-L M96%N5&5X=" ]("(B#0H@(" @(" @(" @(" @("!,(#T@, T*(" @(" @(" @ M(" @96QS:68@*'AQ5VAI=&5S<&%C92 H0VQE86Y497AT6S1=*2D@=&AE;@T* M(" @(" @(" @(" @(" @:68@*&-O;7!A<F4@*$-L96%N5&5X=%LQ+BXS72PB M9F]R(BD@/2 P*2!T:&5N#0H@(" @(" @(" @(" @(" @(" @("TM(&5I=&AE M<B!N;W1E('=E)W)E(&EN(&$@;F5W(&YE<W1I;F<N+BX-"B @(" @(" @(" @ M(" @(" @(&EF("AX<5!R;VUP=" ]("<@)RD@=&AE;@T*(" @(" @(" @(" @ M(" @(" @(" @=&5M<" ]($-L96%N5&5X= T*(" @(" @(" @(" @(" @(" @ M(" @;&]G=&5M<" ](%1E>'0-"B @(" @(" @(" @(" @(" @(" @($-L96%N M5&5X=" ]("(B#0H@(" @(" @(" @(" @(" @(" @("!497AT(#T@(B(-"B @ M(" @(" @(" @(" @(" @(" @('AQ4')O;7!T(#T@)S$G#0H@(" @(" @(" @ M(" @(" @(" @("!,(#T@, T*(" @(" @(" @(" @(" @(" @96QS:68@*'AQ M4')O;7!T(#P@)V8G*2!T:&5N#0H@(" @(" @(" @(" @(" @(" @+2T@96QS M(" @(" @(" @(" @(" @(" @("TM('1Y<&4L(&9U;F-T:6]N(&]R('!R;V-E M9'5R92D-"B @(" @(" @(" @(" @(" @(" @('AQ4')O;7!T(#T@>'%0<F]M M<'0@*R Q#0H@(" @(" @(" @(" @(" @(" @("!,(#T@, T*(" @(" @(" @ M(" @(" @(" @96YD(&EF#0H@(" @(" @(" @(" @("!E;'-I9B H8V]M<&%R M92 H0VQE86Y497AT6S$N+C-=+")E;F0B*2 ](# I('1H96X-"B @(" @(" @ M(" @(" @(" @(" M+2!F:7)S="P@8VAE8VL@=&\@<V5E(&EF(&ET)W,@96YD M:6YG(&$@='EP92P-"B @(" @(" @(" @(" @(" @(" M+2!P<F]C961U<F4L M(&]R(&9U;F-T:6]N#0H@(" @(" @(" @(" @(" @("!I9B H>'%0<F]M<'0@ M/2 G="<I(&]R("AX<5!R;VUP=" ]("=P)RD@;W(-"B @(" @(" @(" @(" @ M(" @(" @("AX<5!R;VUP=" ]("=F)RD@=&AE;@T*(" @(" @(" @(" @(" @ M(" @(" @("TM('-I;F-E(&ET(&ES+"!J=7-T(&-L;W-E('1H:6YG<R!O9F8- M"B @(" @(" @(" @(" @(" @(" @('AQ4')O;7!T(#T@)R G#0H@(" @(" @ M(" @(" @(" @(" @("!#;&5A;E1E>'0@/2!T96UP("8@(B B("8@0VQE86Y4 M97AT#0H@(" @(" @(" @(" @(" @(" @("!497AT(#T@;&]G=&5M<" F("(@ M(B F(%1E>'0-"B @(" @(" @(" @(" @(" @(" @($P@/2 P#0H@(" @(" @ M(" @(" @(" @("!E;'-I9B H>'%0<F]M<'0@(3T@)R G*2!T:&5N#0H@(" @ M(" @(" @(" @(" @(" @(" @+2T@:70G<R!A(&-O;G1I;G5A=&EO;BP@<V\@ M<W5B=')A8W0@82!N97-T:6YG#0H@(" @(" @(" @(" @(" @(" @("!X<5!R M;VUP=" ]('AQ4')O;7!T("T@,0T*(" @(" @(" @(" @(" @(" @(" @:68@ M*'AQ4')O;7!T(#T@)S G*2!T:&5N#0H@(" @(" @(" @(" @(" @(" @(" @ M(" @+2T@=V4G<F4@;W5T(&]F('1H92!N97-T:6YG+"!S;R!W92!F:6YI<V@@ M=7 -"B @(" @(" @(" @(" @(" @(" @(" @('AQ4')O;7!T(#T@)R G#0H@ M(" @(" @(" @(" @(" @(" @(" @("!#;&5A;E1E>'0@/2!T96UP("8@(B B M("8@0VQE86Y497AT#0H@(" @(" @(" @(" @(" @(" @(" @("!497AT(#T@ M;&]G=&5M<" F("(@(B F(%1E>'0-"B @(" @(" @(" @(" @(" @(" @(&5N M9"!I9@T*(" @(" @(" @(" @(" @(" @(" @3" ](# -"B @(" @(" @(" @ M(" @(" @(&5L<V4-"B @(" @(" @(" @(" @(" @(" @(" M+2!W92!C86XG M=" G96YD)R!W:71H;W5T(&-O;G1I;G5A=&EO;BXN+@T*(" @(" @(" @(" @ M(" @(" @(" @("TM('-O('=E(&-A=7-E(&$@<WES=&5M+6QE=F5L(&%B;W)T M#0H@(" @(" @(" @(" @(" @(" @("!X<5!R;VUP=" ]("<@)PT*(" @(" @ M(" @(" @(" @(" @(" @3" ](# -"B @(" @(" @(" @(" @(" @(&5N9"!I M9@T*(" @(" @(" @(" @(" @96YD(&EF#0H@(" @(" @(" @("!E;F0@:68- M"B @(" @(" @(&5N9"!I9@T*#0H@(" @(" @("!I9B H3" ^(#(I('1H96X- M"B @(" @(" @(" @(&EF("AC;VUP87)E("A#;&5A;E1E>'1;,2XN,UTL(F)Y M92(I(#T@,"D@=&AE;@T*(" @(" @(" @(" @(" @("TM(&5X:70@=&AE('!R M;V=R86T-"B @(" @(" @(" @(" @(&-L;W-E("AX<6QO9U]F;BD-"B @(" @ M(" @(" @(" @(&EF("AX<4-U<G)&3G5M(#X@,"D@=&AE;@T*(" @(" @(" @ M(" @(" @(" @>'%T96UP(#T@<W!R:6YT9B H(B4P-F0B+"!X<4-U<G)&3G5M M("T@,2D-"B @(" @(" @(" @(" @(" @('-Y<W1E;2 H(F1E;"!C.EQ<>'$B M("8@>'%T96UP("8@(BYE(BP@,BD-"B @(" @(" @(" @(" @(&5N9"!I9@T* M(" @(" @(" @(" @(" @86)O<G0@*# I#0H@(" @(" @(" @("!E;'-I9B H M8V]M<&%R92 H0VQE86Y497AT6S$N+C)=+")I9B(I(#T@,"D@86YD#0H@(" @ M(" @(" @(" @(" @(" H>'%7:&ET97-P86-E("A497AT6S-=*2D@=&AE;@T* M(" @(" @(" @(" @(" @3" ](# -"B @(" @(" @(" @(" @(" @+2T@96ET M:&5R(&YO=&4@=V4G<F4@:6X@82!N97<@;F5S=&EN9RXN+@T*(" @(" @(" @ M(" @(" @:68@*'AQ4')O;7!T(#T@)R G*2!T:&5N#0H@(" @(" @(" @(" @ M(" @("!T96UP(#T@0VQE86Y497AT#0H@(" @(" @(" @(" @(" @("!L;V=T M96UP(#T@5&5X= T*(" @(" @(" @(" @(" @(" @0VQE86Y497AT(#T@(B(- M"B @(" @(" @(" @(" @(" @(%1E>'0@/2 B(@T*(" @(" @(" @(" @(" @ M(" @>'%0<F]M<'0@/2 G,2<-"B @(" @(" @(" @(" @(&5L<VEF("AX<5!R M;VUP=" \("=F)RD@=&AE;@T*(" @(" @(" @(" @(" @("TM(&5L<V4@8V]N M=&EN=64@;F5S=&EN9R H87-S=6UI;F<@=V4G<F4@;F]T(&EN(&$-"B @(" @ M(" @(" @(" @(" M+2!T>7!E+"!F=6YC=&EO;B!O<B!P<F]C961U<F4I#0H@ M(" @(" @(" @(" @(" @("!X<5!R;VUP=" ]('AQ4')O;7!T("L@,0T*(" @ M(" @(" @(" @(" @96YD(&EF#0H@(" @(" @(" @("!E;F0@:68-"B @(" @ M(" @(&5N9"!I9@T*#0H@(" @(" @("!I9B H3" ^(#$I('1H96X-"B @(" @ M(" @(" @(&EF("AC;VUP87)E("A#;&5A;E1E>'1;,2XN,ETL(BTM(BD@/2 P M*2!T:&5N#0H@(" @(" @(" @(" @(" @+2T@8F%S:6-A;&QY+"!I9VYO<F4@ M8V]M;65N=',-"B @(" @(" @(" @(" @($-L96%N5&5X=" ]("(B#0H@(" @ M(" @(" @("!E;F0@:68-"B @(" @(" @(&5N9"!I9@T*#0H@(" @(" @(" @ M#0H@(" @(" @("!I9B H>'%0<F]M<'0@(3T@)R G*2!T:&5N#0H@(" @(" @ M(" @("!T96UP(#T@=&5M<" F("(@(B F($-L96%N5&5X= T*(" @(" @(" @ M(" @;&]G=&5M<" ](&QO9W1E;7 @)B B("(@)B!497AT#0H@(" @(" @("!E M;'-E#0H@(" @(" @(" @+2T@;W1H97)W:7-E+"!W92=R92!D;VYE('=I=&@@ M;W5R(&EN<'5T#0H at (" @(" @(" @("!.;W1$;VYE5VET:$EN<'5T(#T@, T* M(" @(" @(" @(" @<F5T(#T@>U1E>'0L($-L96%N5&5X='T-"B @(" @(" @ M(&5N9"!I9@T*#0H@(" @("!E;F0@:68@+2T@96YD(&]F(&-H96-K(&9O<B!A M;B!E;7!T>2!I;G!U= T*#0H@("!E;F0@=VAI;&4-"@T*(" @<F5T=7)N(')E M= T*#0IE;F0@9G5N8W1I;VX@+2T@96YD('AQ1V5T57-E<DEN<'5T*"D-"@T* M36%I;B H*0T*#0H@("!S97%U96YC92!X<5-T871E;65N=%1O3&]G+"!X<5-T M871E;65N=%1O17@-"B @(&EN=&5G97(@('AQ;F5X=%]F;@T*#0H@("!X<71E M;7 @/2!X<4=E=%5S97));G!U=" H*0T*(" @>'%3=&%T96UE;G14;TQO9R ] M17@@(#T@>'%T96UP6WAQ4U1!5$5-14Y47U1/7T5870T*#0H@("!I9B H>'%# M=7)R1DYU;2 ^(# I('1H96X-"B @(" @('AQ=&5M<" ]('-P<FEN=&8@*"(E M,#9D(BP@>'%#=7)R1DYU;2 M(#$I#0H@(" @("!S>7-T96T@*")D96P@8SI< M7'AQ(B F('AQ=&5M<" F("(N92(L(#(I#0H@("!E;F0@:68-"@T*(" @>'%T M96UP(#T@<W!R:6YT9B H(B4P-F0B+"!X<4-U<G)&3G5M*0T*#0H@("!X<6YE M>'1?9FX@/2!O<&5N("@B8SI<7'AQ(B F('AQ=&5M<" F("(N92(L(")W(BD- M"@T*(" @<'5T<R H>'%N97AT7V9N+"!X<5-T871E;65N=%1O17@@)B B7&XB M*0T*#0H@("!I9B H>'%#=7)R1DYU;2 \(#DY.3DY.2D@=&AE;@T*(" @(" @ M>'%T96UP(#T@<W!R:6YT9B H(B4P-F0B+"!X<4-U<G)&3G5M("L@,2D-"B @ M(" @('!U=',@*'AQ;F5X=%]F;BP@(E%W97)T>4IU;DM?36%I;B H*5QN:6YC M;'5D92!C.EQ<>'$B("8-"B @(" @(" @(" @(" @(" @(" @('AQ=&5M<" F M("(N95QN(BD-"B @(&5L<V4-"B @(" @('!U=',@*'AQ;F5X=%]F;BP@(GAQ M"@T*(" @8VQO<V4@*'AQ;F5X=%]F;BD-"@T*(" @<'5T<R H>'%L;V=?9FXL M('AQ4W1A=&5M96YT5&],;V<@)B B7&XB*0T*#0H@("!X<4-U<G)&3G5M(#T@ M>'%#=7)R1DYU;2 K(#$-"@T*96YD('!R;V-E9'5R92 M+2!E;F0@47=E<G1Y M2G5N2U]-86EN("@I#0H-"B M+2TM+2TM+2TM#0H-"GAQ0W5R<D9.=6T@/2 P M#0IX<6QO9U]F;B @(#T@;W!E;B H(F,Z7%QL;V<N92(L(G<B*0T*>'%0<F]M M<'0@(" ]("<@)PT*#0H@+2TM+2TM+2TM+0T*#0IX<41I<W!L87E%;G1R>2 H M*0T*47=E<G1Y2G5N2U]-86EN("@I#0H-"B M+2TM+2TM+2TM#0H-"FEN8VQU 49&4@8SI<>'$P,# P,# N90T*#0HI ` end
2. Re: Introducing E! version 1.0
- Posted by Bernie Ryan <bwryan at PCOM.NET> Jun 04, 1999
- 554 views
look at the end of your message on the list server file. It just shows up on as a bunch of characters that we can't read. Bernie
3. Re: Introducing E! version 1.0
- Posted by Roderick Jackson <rjackson at CSIWEB.COM> Jun 04, 1999
- 532 views
Did the attatchment not go through? What email software are you using? I get a copy of everything I send, and I received the file just fine. Oh well, sorry for those who got a bunch of garbage... I'll be sending the file to Rob this weekend, so it should hopefully be up on the website by next week... Rod Jackson ---------- From: Bernie Ryan[SMTP:bwryan at PCOM.NET] Sent: Friday, June 04, 1999 12:31 PM To: EUPHORIA at LISTSERV.MUOHIO.EDU Subject: Re: Introducing E! version 1.0 look at the end of your message on the list server file. It just shows up on as a bunch of characters that we can't read. Bernie
4. Re: Introducing E! version 1.0
- Posted by "Cuny, David" <David.Cuny at DSS.CA.GOV> Jun 04, 1999
- 520 views
Rod Jackson wrote: > Did the attatchment not go through? I got a copy, but I tried this: > integer x > x = 12 and got the error: x has not been declared Did you make any last minute changes to the code before sending it out? -- David Cuny
5. Re: Introducing E! version 1.0
- Posted by Bernie Ryan <bwryan at PCOM.NET> Jun 04, 1999
- 523 views
I am using MS IE5 and reading the messages directly off of the list server. I am not sending or receiving email except through the LIST SERVER Go to the list server with your browser and look at your message as it is posted and you will see what I am talking about. Bernie
6. Re: Introducing E! version 1.0
- Posted by Roderick Jackson <rjackson at CSIWEB.COM> Jun 04, 1999
- 528 views
No, I didn't make changes (although I'm not saying it's guaranteed bug-free). The reason you got the error is because variables and constants must be declared as global; I could have had the program "globalize" variable declarations, but (1) I was trying to get something that worked done as soon as I could, and (2) globalizing user-defined types looks like it's going to be somewhat difficult. Again though, I plan on doing something about it in the next version. Rod Jackson ---------- From: Cuny, David[SMTP:David.Cuny at DSS.CA.GOV] Sent: Friday, June 04, 1999 1:37 PM To: EUPHORIA at LISTSERV.MUOHIO.EDU Subject: Re: Introducing E! version 1.0 Rod Jackson wrote: > Did the attatchment not go through? I got a copy, but I tried this: > integer x > x = 12 and got the error: x has not been declared Did you make any last minute changes to the code before sending it out? -- David Cuny
7. Re: Introducing E! version 1.0
- Posted by Normand Blais <marcel_ya at YAHOO.COM> Jun 04, 1999
- 517 views
Declaration must "global" according to the author. > global integer x > x = 12 Regards, --- "Cuny, David" <David.Cuny at DSS.CA.GOV> wrote: > Rod Jackson wrote: > > > Did the attatchment not go through? > > I got a copy, but I tried this: > > > integer x > > x = 12 > > and got the error: > > x has not been declared > > Did you make any last minute changes to the code > before sending it out? > > -- David Cuny > _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com
8. Re: Introducing E! version 1.0
- Posted by "Boehme, Gabriel" <gboehme at POBOXB1.HQ.MSMAIL.MUSICLAND.COM> Jun 04, 1999
- 529 views
>I got a copy, but I tried this: > > > integer x > > x = 12 > >and got the error: > > x has not been declared > >Did you make any last minute changes to the code before sending it out? I found this, hidden cleverly within Rod's original post... :) -- When declaring variables or constants, you MUST declare them as global if you want to make any use of them. This will be addressed in future versions. Kind of an odd limitation, but this *is* the first release. I can't even get this thing to run -- it gets to the opening screen and prompt, but when I type in something and press enter I get a "bad file number (-1)" error. Apparently, the permissions on my computer won't allow me to create that temporary .E file at the root of the C:\ drive. Here's the complete contents of the EX.ERR file: T:\CMD\E!.EX:309 in procedure QwertyJunK_Main() bad file number (-1) xqStatementToLog = {} xqStatementToEx = {} xqnext_fn = -1 .. called from T:\CMD\E!.EX:336 Global & Local Variables T:\CMD\E!.EX: xqCurrFNum = 0 xqlog_fn = -1 xqPrompt = 32' ' xqtemp = {48'0',48'0',48'0',48'0',48'0',48'0'} Be seeing you, Gabriel Boehme
9. Re: Introducing E! version 1.0
- Posted by Roderick Jackson <rjackson at CSIWEB.COM> Jun 04, 1999
- 516 views
Well, it does appear to be a problem with writing the temporary file (and the log file, too.) I'm sorry though, I'm at a loss to explain the WHY of it. Just in case it may help, the filenames the program uses are pretty much hardwired. In other words, it doesn't just write out to 'log.e', but specifically to 'c:\log.e'. If T: is the name of the drive you normally use, you may want to try changing all references to "c:\" to "t:\", just to see if it works. Also, are you running under pure DOS, NT, or Win95? Hmmm... with some more info, I think I might be able to work around this. Rod Jackson ---------- From: Boehme, Gabriel[SMTP:gboehme at POBOXB1.HQ.MSMAIL.MUSICLAND.COM] Sent: Friday, June 04, 1999 2:20 PM To: EUPHORIA at LISTSERV.MUOHIO.EDU Subject: Re: Introducing E! version 1.0 <snip> I can't even get this thing to run -- it gets to the opening screen and prompt, but when I type in something and press enter I get a "bad file number (-1)" error. Apparently, the permissions on my computer won't allow me to create that temporary .E file at the root of the C:\ drive. Here's the complete contents of the EX.ERR file: T:\CMD\E!.EX:309 in procedure QwertyJunK_Main() bad file number (-1) xqStatementToLog = {} xqStatementToEx = {} xqnext_fn = -1 . called from T:\CMD\E!.EX:336 Global & Local Variables T:\CMD\E!.EX: xqCurrFNum = 0 xqlog_fn = -1 xqPrompt = 32' ' xqtemp = {48'0',48'0',48'0',48'0',48'0',48'0'} Be seeing you, Gabriel Boehme
10. Re: Introducing E! version 1.0
- Posted by David Cuny <dcuny at LANSET.COM> Jun 04, 1999
- 534 views
Urg. I guess I shoulf RTFM, instead of just glancing through it. Thanks! -- David Cuny
11. Re: Introducing E! version 1.0
- Posted by "E. Allen Soard" <esp.software at EXCITE.COM> Jun 04, 1999
- 523 views
I'd like to try this thing out, but apperantly subscribed to the list about 10 minutes too late. can someone send me a copy? -Allen On Fri, 4 Jun 1999 14:20:00 -0500, Boehme, Gabriel wrote: > >I got a copy, but I tried this: > > > > > integer x > > > x = 12 > > > >and got the error: > > > > x has not been declared > > > >Did you make any last minute changes to the code before sending it out? > > I found this, hidden cleverly within Rod's original post... :) > > -- When declaring variables or constants, you MUST declare them as global > if you want to > make any use of them. This will be addressed in future versions. > > Kind of an odd limitation, but this *is* the first release. > > > I can't even get this thing to run -- it gets to the opening screen and > prompt, but when I type in something and press enter I get a "bad file > number (-1)" error. Apparently, the permissions on my computer won't allow > me to create that temporary .E file at the root of the C:\ drive. Here's the > complete contents of the EX.ERR file: > > T:\CMD\E!.EX:309 in procedure QwertyJunK_Main() > bad file number (-1) > xqStatementToLog = {} > xqStatementToEx = {} > xqnext_fn = -1 > > .. called from T:\CMD\E!.EX:336 > > Global & Local Variables > > T:\CMD\E!.EX: > xqCurrFNum = 0 > xqlog_fn = -1 > xqPrompt = 32' ' > xqtemp = {48'0',48'0',48'0',48'0',48'0',48'0'} > > > Be seeing you, > Gabriel Boehme What has the near functionality of a PDA at a tenth the cost? ...Give Up? The Game Boy DragonEagle's Gameboy Developement Page http://home.earthlink.net/~asoard/gameboy _______________________________________________________ Get your free, private email at http://mail.excite.com/
12. Re: Introducing E! version 1.0
- Posted by "Boehme, Gabriel" <gboehme at POBOXB1.HQ.MSMAIL.MUSICLAND.COM> Jun 04, 1999
- 530 views
Yeah, I changed all "c:\" references to "t:\", and it worked just fine. I'm running under NT, and it's on a work machine, so I guess the LAN folks who set up the permissions didn't want me writing to the root directory of the C drive. :) Pretty spiffy! Congrats on a job well done. ---------- From: Roderick Jackson To: EUPHORIA; Boehme, Gabriel Subject: RE: Introducing E! version 1.0 Date: Friday, June 04, 1999 2:54PM Well, it does appear to be a problem with writing the temporary file (and the log file, too.) I'm sorry though, I'm at a loss to explain the WHY of it. Just in case it may help, the filenames the program uses are pretty much hardwired. In other words, it doesn't just write out to 'log.e', but specifically to 'c:\log.e'. If T: is the name of the drive you normally use, you may want to try changing all references to "c:\" to "t:\", just to see if it works. Also, are you running under pure DOS, NT, or Win95? Hmmm... with some more info, I think I might be able to work around this. Rod Jackson