> >>I removed does> for various reasons; there's a replacement called "does" > in 8.0: > > : (foo) 10 + ; > : foo create literal, does (foo) ; > > This encourages factoring a bit more without sacrificing flexibility > as far as I can tell.<< > > My only concern here is: does it involve an extra jump for every > invocation of the 'does' word? No. does> changed a jump (call dovar) to (call code_after_does) and inserted a bit of "fixup" code after does> and before allowing the compiler to continue. My does word inserts a single call followed by a ret. does> ended up inserting more jumps overall (the fixup code made use of an additional subroutine). > >Blocks: These will be part of the 8.0 core.< > > I would prefer loadable personally, but not a biggie. :) The problem here is that we have to have a way to load things. I can do blocks, which are easily portable across OSes (including the native version) or files, which tend to be a bit trickier to deal with IMO. A fixed-size blockfile is enough to let us load and enable full-scale file I/O, so I see this as the best route. -- Charles