Re: Modified Interpreter
- Posted by Igor Kachan <kinz at peterlink.ru> Jul 12, 2003
- 465 views
Hello Pete, ---------- > On Sat, 12 Jul 2003 13:48:14 +0400, Igor Kachan <kinz at peterlink.ru> > wrote: > > >So, there is no problem with any transformations of this code. > > Good. Try this (on either standard Eu 2.4 or Matts): > > a.e: > global integer z > z=1 > include b.e as b > include c.e as c > include z.e as d > ?{z,b:z,c:z,d:z} > > b.e: > global integer z > z=2 > include a.e as a > include c.e as c > include z.e as d > ?{a:z,z,c:z,d:z} > > c.e: > global integer z > z=3 > include a.e as a > include b.e as b > include z.e as d > ?{a:z,b:z,z,d:z} > > z.e: > global integer z > z=4 > include a.e as a > include b.e as b > include c.e as c > ?{a:z,b:z,c:z,z} > > As expected (well, actually, I wasn't too sure about re-including the > calling program, but I am now) this gives no errors and prints: > > {1,2,3,4} > {1,2,3,4} > {1,2,3,4} > {1,2,3,4} > > Cool, huh? Cool, yes, but I wonder why my proggy prints: 1 2 3 and what z=3, of my a.e, of my b.e or of my c.e > Regards, > Pete > PS I really quite like this example, you > can run any of a.e, b.e, c.e, > or z.e and get exactly the same result ! I love your example too, I'll run it and kiss it tonight, but I still wonder why my proggy prints: 1 2 3 and what .... Regards, Igor Kachan kinz at peterlink.ru