summaryrefslogtreecommitdiff
path: root/intellect-framework-from-internet/starts/meaning-vm/level0.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'intellect-framework-from-internet/starts/meaning-vm/level0.cpp')
-rw-r--r--intellect-framework-from-internet/starts/meaning-vm/level0.cpp84
1 files changed, 0 insertions, 84 deletions
diff --git a/intellect-framework-from-internet/starts/meaning-vm/level0.cpp b/intellect-framework-from-internet/starts/meaning-vm/level0.cpp
deleted file mode 100644
index f15b90d..0000000
--- a/intellect-framework-from-internet/starts/meaning-vm/level0.cpp
+++ /dev/null
@@ -1,84 +0,0 @@
-#include "level-0/level-0.hpp"
-
-#include <functional>
-#include <iostream>
-
-using namespace intellect::level0;
-
-#define out(name) std::cout << " " #name ":" << std::hex << (size_t)name.ptr() << std::dec
-
-int main()
-{
- std::cout << allocated() << " allocated" << std::endl;
-
- ref store = alloc(concepts::allocations()); out(store);
- ref a = alloc(store); out(a);
- ref b = alloc(store); out(b);
- ref c = alloc(store); out(c);
- ref d = alloc(store); out(d);
- ref e = alloc(store); out(e);
- auto numlink = alloc(a); out(numlink);
- auto codelink = alloc(a); out(codelink);
-
- ref skip = alloc(store); out(skip);
- std::cout << std::endl;
-
- a.link(
- b, c,
- d, e
- );
- e.set(b, a);
- c.link(b, e);
- a.vset<int>(numlink, 3);
- a.vset<std::function<void()>>(codelink, [](){
- std::cout << "Hello, world." << std::endl;
- });
-
- std::cout << "Num: " << a.get(numlink).dump(skip, skip);
- std::cout << "Code: " << a.get(codelink).dump(skip, skip);
- std::cout << a.dump(skip, skip);
- std::cout << "Num: " << a.vget<int>(numlink) << std::endl;
- std::cout << "Code: "; a.vget<std::function<void()>>(codelink)();
-
- std::cout << allocated() << " allocated" << std::endl;
-
- a.get(codelink).setcrucial();
- try {
- dealloc(a.get(codelink), a);
- throw "deallocd crucial concept";
- } catch (crucial_concept & e) {
- realloc(a.get(codelink), concepts::level0allocations());
- }
- a.setcrucial(codelink, a.get(codelink));
- a.setcrucial(numlink, a.get(numlink));
- try {
- a.unlink(codelink);
- throw "unlinkd crucial link";
- } catch (crucial_link_type_target & e) {
- realloc(a, concepts::level0allocations());
- realloc(codelink, concepts::level0allocations());
- realloc(numlink, concepts::level0allocations());
- }
-
- for (auto c : { a, a.get(codelink), a.get(numlink) } )
- for (auto it = c.links().begin(); it != c.links().end();) {
- if (!c.crucial(it) && !it->first.linked(concepts::allocator(), concepts::level0allocations())) {
- c.unlink(it++);
- } else {
- ++ it;
- }
- }
-
- e.unlink(b, a);
- //dealloc(a, store);
- dealloc(store, concepts::allocations());
-
- std::cout << allocated() << " allocated" << std::endl;
-
- std::cout << "=== (feel free to move the below to its most effective spot) ===" << std::endl;
- std::cout << "Please support Karl working on this intelligence framework." << std::endl;
- std::cout << "The framework needs to be quality, so that the rest may function." << std::endl;
- std::cout << "=== === === === === === === === === === === === === === === ===" << std::endl;
-
- return 0;
-}