bee_rider 15 hours ago

Well, I was working on a sort of green-field project that did this, and I liked it. It neatly solved the problem of needing the tests, but only wanting to call them on user-provided inputs. However, some caveats:

* I wasn’t around long enough to see if there was a hidden maintenance cost

* It was a very thoughtfully designed library in an already-well-understood domain so it wasn’t like we were going to need to change the arguments a ton

* It was explicitly a library designed to be used as a library from the get-go, so there was a clear distinction of which functions should be user-visible.

I think I would find it annoying if I was doing exploratory programming and expected to change the arguments often. But, in that case, maybe it is too early to start checking user inputs anyway.