Mono-D v0.4.1.2 - Heavily improved performance + Completion bugs removed
alex
info at alexanderbothe.com
Thu Aug 23 16:18:25 PDT 2012
Hi everyone,
Right after the GSoC finished (I'm really sure I passed :)), I've
just found more time to improve things drastically:
By using a nice combination of storing AST children both sorted
by name in a dictionary and in normal list, I was able to
increase the resolution performance extremely - that means it
takes ~0.3 milliseconds instead of ~3ms to resolve a normal
symbol like a local variable or a local class definition.
As a side effect, UFCS completion and preparation right after
startup gained a maximum of performance boost! Tooltips and
(later on) semantic highlighting could be done even more faster :)
Then I fixed several issues with template parameter deduction -
and figured out several bugs or a kinda undefined behaviour of
dmd:
class A(T) {
class SubClass {}
}
class C(U: A!W.SubClass, W){}
class D : C!(A!int.SubClass) { } // is not allowed, but A!int is
-- why?
Furthermore I fixed the parameter completion on this() and
super() expressions, what implies a great usability bonus imho.
Not to forget all the classic null-check issues and smaller bugs.
Cheers,
Alex
http://mono-d.alexanderbothe.com
https://github.com/aBothe/Mono-D/issues
More information about the Digitalmars-d-announce
mailing list