[lisaac-Bugs][312024] Inherit slots are inherited when resend

lisaac-bugs at alioth.debian.org lisaac-bugs at alioth.debian.org
Fri Oct 23 00:07:35 UTC 2009


Bugs item #312024, was opened at 2009-10-23 02:07 by Mildred Ki'Lya
You can respond by visiting: 
https://alioth.debian.org/tracker/?func=detail&atid=413092&aid=312024&group_id=100200

Status: Open
Priority: 3
Submitted By: Mildred Ki'Lya (mildred-guest)
Assigned to: Nobody (None)
Summary: Inherit slots are inherited when resend 
Target Milestone: Lisaac 0.4
Category: Lisaac Compiler


Initial Comment:
Imagine the following prototypes:

Section Header
  + name := SUPER_PARENT;
Section Inherit
  + parent :Expanded OBJECT;
Section Public
  - test <-
  (
    "SUPER_PARENT".println;
  );

Section Header
  + name := PARENT;
Section Inherit
  + parent :Expanded OBJECT;
Section Public
  - test <-
  (
    parent.test;
    "PARENT".println;
  );

Section Header
  + name := CHILD;
Section Inherit
  + parent :Expanded PARENT;
Section Public
  - main <-
  (
    test
  );



Now, execute CHILD.
What happens ?

- CHILD.main is executed
- PARENT.test is executed
- PARENT.test resend on the slot "parent"
- The slot "parent" is computed as CHILD.parent
- PARENT.test resend on PARENT.test
- Recursivity without end is detected by the compiler

Instead, the resend should be detected and the inherit slot should be resolved statically.

----------------------------------------------------------------------

You can respond by visiting: 
https://alioth.debian.org/tracker/?func=detail&atid=413092&aid=312024&group_id=100200



More information about the Lisaac-devel mailing list