Types as assertions | Hugonweb Annotated Link Bibliography

https://jerf.org/iri/post/2025/fp_lessons_types_as_assertions/

Using custom types wherever there is some concept of validity can help make a codebase free from checking validity everywhere. It only must be done in the constructor and errors handled by the caller of the constructor.

So look through a codebase for functions that take string, int, and float!