Wesner Moise (.NET Undocumented blog) compares old good .NET 1.X System.Collections.Hashtable and brand new Whidbey Dictionary<K,V>. Interesting. In short:
- New collision elimination strategy - chaining instead of probing. Yeah, array based linked list for each bucket. Allegedly it doubles perf! Who said linked lists are just interviewers' toy?
- As a consequence - more thrifty memory usage, especially when storing value types.
- Dictionary preserves order of keys.
- Empty Dictionary occupies only 40 bytes.
- Struct-based enumerators hence fast enumeration.
- No probing hence no more load factor.
I think EXSLT.NET needs some tweaking to work under .NET 2.0, that's what I'm investigating now.
Must test exslt:distinct() against v.2.0 !