By default, S-Express uses the simple name of a class as the typehint when resolving implementations of a sealed trait.
By default, S-Express uses the simple name of a class as the typehint when resolving implementations of a sealed trait. However, the ENSIME protocol uses custom typehints, which are defined here - in combination with trait-specific typehint rules.
These implicit vals are actually optional - S-Express doesn't *need* them - and exist only to help the compiler to resolve various implicits without recomputing them.
These implicit vals are actually optional - S-Express doesn't *need* them - and exist only to help the compiler to resolve various implicits without recomputing them. Runtime performance is also improved by having these assigned to vals.
This is a tricky one to retrofit:
This is a tricky one to retrofit: