Howdy! Andy Wingo <wi...@pobox.com> writes:
> So, my thought is to extend procedures with an additional pointer, a > pointer to a "native" code structure. (So your point is what should we do now to allow for such experiments eventually, right?) Adding an extra work to programs seems like a good idea, yes. > Now, what technology to choose for the compiler itself? Dunno. For a > JIT, it would be useful to use something portable, and perhaps do the > JIT compilation on the bytecode itself, without more source information. > It would not produce the fastest code, but it would run fast. Yes, that’s what I had in mind, using GNU lightning (see <http://www.fdn.fr/~lcourtes/software/guile/jit.html>.) It /seems/ to be doable, with milestones to do it incrementally, starting from a dumb version. > I think we can produce better native code ahead-of-time coming from the > tree-il layer directly. I feel like eventually we'll need to replace > GLIL with something else, but I don't really know; we'll find out in the > future I guess. But I do want to do ahead-of-time compilation, because > I want Guile programs to start up very quickly and not consume much > memory. Sure. lightning does x86, x86_64, sparc, and powerpc (PLT uses it) while Sassy does only x86, so it may be that both could play a role. Anyway, not for now. :-) Thanks, Ludo’.