why not using context bound?  like `def sortBy[K : Ordering : ClassTag]`