summaryrefslogtreecommitdiff
path: root/starts/meaning-vm/main.cpp
diff options
context:
space:
mode:
authorolpc user <olpc@xo-5d-f7-86.localdomain>2019-11-24 00:51:53 -0800
committerolpc user <olpc@xo-5d-f7-86.localdomain>2019-11-24 00:51:53 -0800
commitb3dea01d1ad6803b96865a846b56494506ccc74e (patch)
treeb6d21894711aff4d0fa1197434a03cacfaf0d594 /starts/meaning-vm/main.cpp
parentfed2ac694bd028d119581ea05a3376e791aee97d (diff)
downloadstandingwithresilience-b3dea01d1ad6803b96865a846b56494506ccc74e.tar.gz
standingwithresilience-b3dea01d1ad6803b96865a846b56494506ccc74e.zip
changes didn't pan out; next change is big (merging statementevaluable with ref). saving work.
Diffstat (limited to 'starts/meaning-vm/main.cpp')
-rw-r--r--starts/meaning-vm/main.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/starts/meaning-vm/main.cpp b/starts/meaning-vm/main.cpp
index 6919791..1d25975 100644
--- a/starts/meaning-vm/main.cpp
+++ b/starts/meaning-vm/main.cpp
@@ -29,8 +29,11 @@ void dumpconcept(ref r)
int main()
{
declrefs(make, linked, habit);
- declrefs(A, B, C);
+ declrefs(structure, function, argument, position, provide);
decllnks(needs, assumes, makes);
+ decllnks(A, B, C);
+ decllnks(is);
+ lnks(argument-position);
// add a new unique link to a concept
// given A, B, C
@@ -40,7 +43,13 @@ int main()
// change the needs structure to use a model for the ref,
// with needed values specified as 'provided'
make-linked = a(habit)[
- needs = and(avariable(A), avariable(B), avariable(C)),
+ needs = a(structure)[
+ is = function-argument,
+ argument-position = vref<int>(1),
+ avariable(A) = provide,
+ avariable(B) = provide,
+ avariable(C) = provide
+ ],
assumes = not(A-B-C-linked = link(A, B, C)),
makes = A-B-C-linked
];