Shiro Kawai <[email protected]> writes: > It's on my agenda, but still several steps away; currently I'm working > on inlining record accessors. > Theoretically, once I've done it, and combined with constant > propagation, reference to a slot > of constant immutable record should be calculated at compile time.
Looking forward to this! :) Are imported bindings (truly) immutable in Gauche? That is, the binding is also immutable for the exporting module (a la R6RS), and the exporting module cannot be reloaded at runtime without also recompiling and reloading the module that imports bindings from it? (Sort of "static linking" of modules.) Because otherwise the compiler cannot know for sure what record object will be accessed at run-time by the importing module, and cannot do the optimization after all. (Or if it does anyway, then reloading the exporting module has no effect because the module that imported it was compiled against and still uses the old version's exported object...) Am I being clear? I mean to write an article some time on the different "linking" strategies for modules especially with regard to Scheme. Or maybe there is such a thing out there already? Taylan _______________________________________________ Scheme-reports mailing list [email protected] http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports
