Scoping is broken, back to the drawing board.  I can't provide first-class functions (in the sense that they are nothing but points in memory to be placed in a variable) if I also am not to allow inherited scoping---doing so would not allow you to call functions defined in a parent scope.  But regular lexical scoping combined with first-class functions leads to the funarg problems, meaning no simple c-style stack.