Tom, Thanks for your quick answer. > The problem is ambiguity. The type checker can't determine which val > function to use, i.e. which dictionary to pass to val. I see. Still, maybe a type-error message in terms of good old "unresolved top-level overloading" would be a bit more useful here... ;-) Cheers, Stefan