Aladdin - Scala Bugtracking
[#850] project: specification priority: low category: missing feature
submitter assigned to status date submitted
Sean Sean open 2006-11-29 12:17:46.0
subject Specification of separate compilation in Scala
code
what happened
Right now we don't have a good handle on when to recompile the dependencies of a Scala file. Basically, because \
of the way mixins are currently compiled, we have to recompile the transitive closure of a Scala file's dependen\
cies whenever the file changes at all. This basically means separate compilation is currently poorly supported.
\



What we need is a specification of what changes necessitate recompilation of what dependencies, and then we need\ to figure out how to detect these changes in NSC. Some changes in the signatures of non-private members necessi\ tate recompilation of direct dependencies. For traits, changes to private members can also require recompiling a\ ny classes (but not traits) that inherit the trait. The way super accesses and outer pointers are compiled is pa\ rticularly fragile to separate compilation, since they are done lazily.
what expected
[back to overview]
Changes of this bug report
Martin  edited on  2006-12-01 17:12:19.0
I have to reassign this back to Sean, as I am overloaded with other tasks. Maybe see with Lex whether you can come up with a binary compatibuility spec. I am happy to review such a spec but I won't write it.