freenode/#clasp - IRC Chatlog
Search
17:14:33
drmeister
Yeah - but the specialized C++ template classes for wrapper functions need a common base class.
17:14:34
drmeister
https://github.com/clasp-developers/clasp/blob/dev/src/core/header-templates/wrappers_functoids.pmp#L28
17:15:42
Bike
we should lose the bclasp closure class, using the stretchy closure class with the one slot being the environment
17:18:02
Bike
anyway, type inference with numbering doesn't seem to fit well into the kildall abstraction i have, so i'm contemplating rewriting it, again
17:19:36
drmeister
I think the entry point for an interpreted closure is a static function that calls the interpreter.
17:20:16
Bike
so it's passed the closure like normal, and it gets the form and environment out of it, and calls the interpreter with those? that's what i'd expect, then
17:37:37
drmeister
This is that entry function: https://github.com/clasp-developers/clasp/blob/dev/src/core/functor.cc#L264
17:38:39
drmeister
And yes - it works exactly as you describe other than the extra step of binding the arguments according to the interpreted closures lambda-list.
17:51:05
Bike
the thing amounts to a traverse of the CFG interlinked with a mapping of nodes onto Somethings, but nothing else is defined. the traverse directions, what the somethings are, nothin
18:48:59
drmeister
It makes loads of sense to get rid of InterpretedClosure_O and CompiledClosure_O - I'm ripping them out now.