In looking at the Python extension code, I think there is an opportunity to slash a little more boilerplate. The Run, RunResult, and Set prims could be made more generic, taking in an appropriate lambda to execute the actual action. Or it could be an object implementing an interface. I should double-check the R and JS extensions again to make sure my intuition is correct, but I'm opening this so I don't forget.