DotNet vs. Smalltalk

My blog has moved.
You can view this post at the following address:
http://www.osherove.com/blog/2004/4/11/dotnet-vs-smalltalk.html
Published Monday, April 12, 2004 1:41 AM by RoyOsherove
Filed under:

Comments

Monday, April 12, 2004 11:49 AM by diggit

# re: DotNet vs. Smalltalk

As a two-year smalltalker recently switched to .NET I could ony confirm how much pain is it to program, after Smalltalk. You can add several items to an ArrayList with AddRange but you can't remove several items from it with RemoveRange. You don't have any Set collection but you have three slightly different Dictionaries. There is even a collection that isn't marked as implementing ICollection (while really implementing all its members) - StringDictionary. And there are collections that don't implement some methods of IList they formally "implement" (f.e. arrays don't implement Add but are IList).
The whole namespace system.collections is just plain stupid or at least confusing.
Monday, April 12, 2004 4:21 PM by Dave Goldstein

# re: DotNet vs. Smalltalk

Oh, I concur!

Off the top of my head...
- Remove silently returns if the member is not present, but does not bother to tell you (by return value) if the element was found
- IList is not a "list" but an indexable collection
- No linked list, lack of many "basic" collection types

I actually wrote down a series of these, and sent them to various .NET team bloggers, don't know if they cared or maybe corrected any of the evils in the new generic collections.