DukRow
2017-03-21
I seem to be missing some of the fields?
The “each” method isn’t working for behaviour_test.row.js
(started using GitLab to organise issues)
https://gitlab.com/g-pechorin/dukrow/issues/1
the variables being set by the script aren’t being saved … because … of … what?
the functions are being save just fine, but, the variables aren’t?
why aren’t variables being set?
2017-03-20
Had a “sick weekend” where I … think that I got “a lot” done … maybe …
Much progress implementing, very little written planning, now (sort of) stuck on pushing through encoding with the new system. If I didn’t have unit tests - this would be a nightmare.
- Seems to be saving most-of the first unit test - yay!
- Not sure why it’s skipping
Suboxone “closure” pushing
N pre-args are pushed on the stack;
sub.push<const char*>("arg0-n")
...
sub.push<const char*>("arg0-2")
sub.push<const char*>("arg0-1")
The “push closure” method is prototype
template<nUpVals: uint16, argC: uint16, returns: bool>
def suboxone::push_closure(code:(suboxone&) => void)
Before the code is executed, the pre-args will be pre-pended to the natural args After the code completes - the top arg will be the result, unless, “FALSE” was passed as the return type
The templates are … sort of … a bad idea for code-size
Defo take advantage of 0-arg stuff;
There will/should be a (shell based?) method pushing thing
template<T: typename, nUpVals: uint16, argC: uint16, returns: bool>
def suboxone::shell<T>::push_method(code:(T&, suboxone&) => void)
This one will wrap the above (I expect) but examine “this”
2017-03-17
It looks like it just needs more work to carry on.
- I copied in scriptie/require() ; seems fine
- I added extra warnings to the prototype code
- I changed subspace to be … lighter … am calling it
suboxone::subenv(std::function<void(void)>)
= I’m up to needing adaptations to the “inhume” module now = I think that I need an inheritance mechanism for vtables
- so I added an extends function to do extensions and an “extends” function to lookup extensions
- … maybe there’s something interesting here …
2017-03-16
My present troubles are associated with most recent rewriting of everything - I need a stable build soon. Ivan discussed “something” and I think that this framework might make an attractive way to run Haskell-as-a-scripting language or Haskell-as-embeddable; not sure. Both sound like relegating Haskell to a lesser role … which worries me.
I like the documentation that I wrote.
After creation of scriptie instances - it looks like the registered object … isn’t what I thought?
- I moved the source code to the new home in a
??/??.cpp.??.hppfile - I’m going to try printing kv-pairs and see what’s in the table
- …
- looks like the tables are identical in both places … almost like the vtable functions aren’t being added in?
= I was using sub.setshell(-1); instead of sub.setshell(-2); - I was assigning the prototype as its own prototype