Scala to get binary compatibility
Written by Jevgeni Kabanov on May 8, 2008 – 6:21 amI sat down with Martin Odersky yesterday and talked about the issues that bothered me in Scala. Turns out that the main reason for the lack of binary compatibility between releases are the concrete methods in traits. At the moment Scala compiler needs to generate stubs in every class mixing in those traits, which means that adding a fresh concrete method requires a full recompile against the trait.
However this can be solved by adding a runtime postprocessor that inserts the stub into class bytecode during classloading. Hopefully this functionality will be enabled in some next version of Scala and we can look forward to distributing the Scala libraries in JARs. I am glad to say that Martin is a great guy and is really committed to making Scala language stable so that the community can build on it without being afraid of breaking changes.
Martin also said that the latest version of Scala implements the stable naming of closure classes that David requested some time ago. This means that JavaRebel can now reload even more changes to Scala programs. Kudos to the Scala team.
Posted in report | 1 Comment »
One Comment to “Scala to get binary compatibility”
Leave a Comment
Additional comments powered by BackType
May 8th, 2008 at 4:41 pm
Great news, making JavaRebel better is a-ok by me :)