On 10/11/2010, at 10:59 PM, John Smith wrote: > Obvious benefits of this are that conflicting function names > from imported modules can be used without qualification (verbose)
Why is making life harder for people reading the code counted as a "benefit"? Let me offer an example from another language. aStream next => consume an item from an input stream and return it aDate next => same as (aDate addDays: 1). How do I cope in Smalltalk? Simple: you don't put the type name in the *function*, you put the type name in the *variable*. If the code says frobnitz next I haven't the least clue what it does or where to look to find out. > it is often desirable to have the same field names > for many records in the same module. I'm not sure that it is desirable to have "many records in the same module" in the first place. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe