[SCM] Lisaac compiler branch, master, updated. lisaac-0.12-520-ge12adfe
Benoit Sonntag
sonntag at icps.u-strasbg.fr
Sat Oct 24 02:41:47 UTC 2009
The following commit has been merged in the master branch:
commit e12adfe64e8db58e52ab5fb9b6ef0b21ce7ba040
Author: Benoit Sonntag <sonntag at icps.u-strasbg.fr>
Date: Sat Oct 24 04:41:46 2009 +0200
reflexivity begin UNSTABLE
diff --git a/src/external/forall_data.li b/src/external/forall_data.li
index 0d68ea0..e0ca3b8 100644
--- a/src/external/forall_data.li
+++ b/src/external/forall_data.li
@@ -33,9 +33,9 @@ Section Inherit
Section Public
- + action:ITM_BLOCK;
+ + action:ITM_READ_ARG2;
- + list_data:FAST_ARRAY(COUPLE(SLOT_DATA,LIST));
+ + list_data:FAST_ARRAY(COUPLE(SLOT_DATA,EXPR));
//
// Creation.
@@ -49,11 +49,21 @@ Section Public
);
- make t:TYPE_FULL action ac:ITM_BLOCK <-
- (
- type := t;
- action := ac;
- list_data := HASHED_DICTIONARY(LIST,SLOT_DATA).create;
- list.add_last Self;
+ ( + lst:FAST_ARRAY(SLOT);
+ + dta:SLOT_DATA;
+ + c:COUPLE(SLOT_DATA,EXPR);
+
+ action := ITM_READ_ARG2.create (ac.position) name (ALIAS_STR.slot_value) args (,);
+ list_data := FAST_ARRAY(COUPLE(SLOT_DATA,EXPR)).create;
+ t.add_reflexivity Self;
+ lst := t.slot_run;
+ (lst.lower).to (lst.upper) do { i:INTEGER;
+ dta := lst.item i.slot_data_intern;
+ (dta != NULL).if {
+ c := COUPLE(SLOT_DATA,LIST).create dta and ();
+ list_data.add_last c;
+ };
+ };
);
//
@@ -62,14 +72,17 @@ Section Public
- my_copy:SELF <-
(
-
+ clone
);
//
// Depend.
//
- - depend
+ - add var:SLOT_DATA <-
+ (
+
+ );
//
// Execute.
@@ -96,7 +109,17 @@ Section Public
//
- display buffer:STRING <-
- (
-
+ (
+ buffer.append "Forall_data:\n";
+ indent.append " ";
+ (list_data.lower).to (list_data.upper) do { i:INTEGER;
+ buffer.append indent;
+ buffer.append "- ";
+ buffer.append (list_data.item i.first.intern_name);
+ buffer.append ":\n";
+ buffer.append indent;
+ list_data.item i.second.genere buffer;
+ };
+ indent.remove_last 2;
);
\ No newline at end of file
diff --git a/src/tools/coupled.li b/src/tools/couple.li
similarity index 94%
copy from src/tools/coupled.li
copy to src/tools/couple.li
index 5eefb49..a5a4db0 100644
--- a/src/tools/coupled.li
+++ b/src/tools/couple.li
@@ -20,7 +20,7 @@
///////////////////////////////////////////////////////////////////////////////
Section Header
- + name := COUPLED(E);
+ + name := COUPLE(E,F);
- copyright := "2003-2007 Benoit Sonntag";
@@ -35,9 +35,9 @@ Section Inherit
Section Public
+ first :E;
- + second:E;
+ + second:F;
- - create elt1:E and elt2:E :SELF <-
+ - create elt1:E and elt2:F :SELF <-
( + result:SELF;
result := clone;
@@ -45,7 +45,7 @@ Section Public
result
);
- - make elt1:E and elt2:E <-
+ - make elt1:E and elt2:F <-
(
first := elt1;
second := elt2;
--
Lisaac compiler
More information about the Lisaac-commits
mailing list