[nem-en] Completion thoughts
Kamil Skalski
kamil.skalski at gmail.com
Thu Jun 1 18:51:31 CEST 2006
> Regarding the compilation I realized that we can do only one
> optimization: if none of the sources change and none
> of the references then we could skip the compilation. As I realized if a
> macro change in a referenced library then it could
> generate different code. Another thing is that if some type changes in a
> referenced library then it can yield a different
> type inference in a nonchanged source file. So it seems that even if no
> source file changes in a project, we cannot
> optimize the compilation to a relinking process... Any thoughts?
>
Exactly, changing referenced libraries must force full initialization
of engine (and it does so at the moment). Otherwise we can safely skip
loading the assemblies and building tree, which is already built (and
completion engine does it from my yesterday change).
Probably the most unoptimized scenario at the moment is when global
code is changed, like signature of method or type - then we reanalyze
all the program structure.
Ok, I think we need some measures, could someone (problably Alejandro
is the best to know) point exactly which operations take most of the
time currently, with the svn version of completion engine?
--
Kamil Skalski
http://nazgul.omega.pl
More information about the devel-en
mailing list