summaryrefslogtreecommitdiff
path: root/starts/meaning-vm/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'starts/meaning-vm/main.cpp')
-rw-r--r--starts/meaning-vm/main.cpp24
1 files changed, 7 insertions, 17 deletions
diff --git a/starts/meaning-vm/main.cpp b/starts/meaning-vm/main.cpp
index f8e4ec0..c4207cb 100644
--- a/starts/meaning-vm/main.cpp
+++ b/starts/meaning-vm/main.cpp
@@ -35,28 +35,18 @@ int main()
declrefs(trueness, truth, what, not);
declrefs(add, unique, habit, needs, assumes, makes);
- A[is = variable];
- B[is = variable];
- C[is = variable];
+ A = a(variable);
+ B = a(variable);
+ C = a(variable);
// add a new unique link to a concept
// given A, B, C
// and assuming A is not linked by B to C,
// makes A be linked by B to C.
-
- // would like to do A = a(variable);
- // solution might be to tag anons as such, and take them with a condition in operator=
- // since we want to return a ref, change [is=variable] to use refs. this means learning
- // to delete them, which means checking if they are used or not.
- // where do we put the deleting?
- // right now helpers is doing memory. maybe instead we can have a memory class.
- // ideally memory is handled by a concept.
- // let's make a pool of concepts?
- (add-link-unique)[
- is = habit,
- needs = A, needs = B, needs = C,
- makes = (abc-linked)[is = link, link-source = A, link-type = B, link-target = C],
- assumes = (abc-not-linked)[is = trueness, what = abc-linked, truth = false]
+ add-link-unique = a(habit)[
+ needs = a(variable, A), needs = a(variable, B), needs = a(variable, C),
+ makes = a(link, abc-linked)[link-source = A, link-type = B, link-target = C],
+ assumes = a(trueness, abc-not-linked)[what = abc-linked, truth = false]
];
dumpconcept(add-link-unique);