String.split considered harmful

It violates your intuitive understanding

Building a strong case (class)

Extending the guarantees your case classes provides you.

Baking plugins

Moving the decorator pattern to compile time

You are not supposed to test that

You are not supposed to test the main code... or do you?