For years the young monk Djishin had been apprenticed to
old master Banzen. Although this was a privilege it brought
Djishin little joy, for lately the master had been growing
visibly irritated with the young monk. Yet the monk could
not fathom the reason.
One morning Djishin said to his fellow apprentice Satou: I
have committed Banzen’s teachings to heart and perform my
duties according to his example, yet his disdain for me is
palpable! And whenever I ask if I have done anything to
incur his displeasure, he tells me No! I am at my wit’s end
with the old man!
Satou replied: If you can no longer march uphill, then the
way forward is not in front of you.
Djishin said: I cannot quit his service any more than I
could bite my own legs off. Yet my patience has waned to the
thinnest sliver. Soon, I fear, the master will push me too
far, and I will surely rebel.
Satou replied: Then run from the path and don’t look back;
for I cannot see your rebellion ending well for anyone,
except perhaps the undertaker.
Not long after, Banzen was reviewing Satou’s code and noted
that she was now using Java’s new Optional class practically
everywhere. Banzen scolded the nun for her usual habit of
playing with novelties instead of focusing her efforts on
building a reliable implementation with customary patterns.
Overhearing this exchange, Djishin felt the last dregs of
patience drain from his body. The monk spat: Optional is no
passing fad; it is Java’s implementation of the Maybe monad,
and any fool who truly cares about reliable implementations
would do well to follow the nun’s example!
There followed an awful silence. No one moved. Djishin could
feel his heart pounding in his ears.
Finally the master arched a bushy white eyebrow, saying: And
what—my impertinent, former apprentice—is a Monad?
With a shaky voice, Djishin explained the nature of monads
and how he had learned of them. When he finished, Banzen
strode over to the monk, raised his staff, and flung both
arms around the boy.
At last! exclaimed the master. I have been wondering whether
I’d trained a monk or a mockingbird. Now I can say to the
other masters: on this day I learned two things, for at last
Djishin told me something that I did not know.