Monkey-Patching, Single Responsibility Principle, and Scala Implicits
jamesgolick.com
jamesgolick.com
The insight here was just that implicit type conversion is very bad when you don't know it's happening. When you DO know it's happening -- because you imported the conversions -- and it's used to save brainstrokes ("codetree nodes"), then it can be very helpful.
There seem to be two views of this among Rubyists. People who think this sort of practice is inherently suspect, and those who see it as no more unusual than reassigning to a variable.
The first group use the term "monkey patching"; with all of its underlying tone of ad-hoc-ery and last-resort duct tape coding.
The other group just refers to it as re-opening classes.
It seems that the Idea plugin will show the implicit conversions that are actually used, but it would also be nice to see all implicits in scope at any time.