Friday, November 25, 2011

So that leaves us with triple threads

The machine, in its basic form, pops triples from a descending graph stored in an sql table. The execution unit is now rigged to support, essentially, unlimited threads ongoing from multiple tables. The machine, in the lab, can stack executable triple threads, maintain the pointers, and interleave them. Each thread frame blocks out a sub convolution of a g graph. So when the machine pops a new, light weight operator, the machine initializes a frame so it may repeatedly run its descending thread with an overload.

That's mechanical, I could do it with steel and wood. All the machine knows is relative light weightness, and that operators, including any small c helpers, are installed. It is the small c helpers I have been trying to avoid, but they are needed for overload.

But he multile thread concept is helping out with general matches because clocking characters can establish a key word thread with begin pointers and known terminators. So we can design general SQL selects against pestablished frames in run time. The simple expression: _@((k1,k2,k3),SomeTripleStore) will automatically set up a frame of the key words. The select where keywords match will have its row positions bound on start, to the sql, or have the frame established for calls back from within sql. The general frame, a convolvable sub graph of any g graph, built in, a given. It helps a lot with pointer arithmetic on output.It is established by default with the parentheses, and implicitly by light weight, installed operators. So, the parenthesis is the default blocking character for now, starts a frame with '(' and deletes it with ')' Overloading is inherited by sub frames. Everything is getting simple here at Imagisoft.

Here is my code in the call back for light weight operators:

case '(' :
p = new_triple_thread();
break;
case ')' :
del_triple_thread();
break;

See, it is built in, can't move it, the parenthesis has struck a blow for permanence!. So any operator can force itself to be lightweight with the parentheses mark, so lets not define a whole bunch of operators, ok.

No comments: