Type classes represent *global* knowledge about a type: `Ord Foo` specifies a total order on `Foo` canonical for the entire program.
OTOH, "implicit values" or "named instances" in some other PLs are *contextual* knowledge about a type.
OTOH, "implicit values" or "named instances" in some other PLs are *contextual* knowledge about a type.
Comments