|
|
|
|
|
by serial_dev
873 days ago
|
|
They are not interchangeable but there is an overlap. For normal code bases, this overlap is relatively small (do not need to validate input types, don't need to automatically convert strings to numbers, convert single items to lists, etc), but as you take advantage of the type system, the overlap can become slightly larger (wrap your types, create separate types for validated values, make impossible states impossible). Granted, no matter how much of a genius you are with the type system, there will always be place for testing, I hope everybody understands that. |
|
I've seen people build type-level DSLs. Sure they encode a lot of logic in types... but are you sure that logic is correct? :)