and screaming into its own file, and now we stick that stuff into its
own little space at the front of what translate returns so that it's
seen by Check Syntax, but we can drop it like a hot potato when it
comes time to run the compiled code.
svn: r340
This fixes up the fact that is-a? should work different for Honu
classes than MzScheme ones (since Honu classes do not automatically
implement the interfaces their superclass did). I also did some
parameterization in the translate module (outside the already
existing current-compile-context).
svn: r330
This makes tenv and lenv, which were arguments to almost everything,
into parameters. The only time they need to be set is after parsing
and before calling anything else, so there's one use in compile/defns
and one use in compile/interaction.
While I was at it, I took a lot of the infrequently-changing
arguments to typecheck-expression and made some typechecker-local
parameters also.
svn: r326
May have to eventually make my own prefixed version of values to use,
similar to what I did with send (though honu:send does a (Honu) null object
check).
svn: r301
of a supertype and subtype, where the subtype was not yet added to
the tenv. Had to hack to get around that one.
Also little problems like the fact that list can be captured by the
user program, so we can't use that -- used list* (with a null at the
end) and null (for empty lists) instead.
Since the power was down and I couldn't get the earlier stuff committed,
I have even more changes. Bug-fixes, mostly, though now top-level
functions that are defined consecutively are mutually recursive as they
should be.
svn: r300