4 ms·
The way I look at type systems is they are an automatic proof system for programs. So you must ask yourself what are you proving with your type system? I looked
by timtadh 13y ago
The way I look at type systems is they are an automatic proof system for programs. So you must ask yourself what are you proving with your type system? I looked at your write up on the github issue and from what I see you are moving some checking into compile time. However, when it comes to "parsing problems" (like: HTTP, XML, command line args, etc...) there isn't much to move. This is because the data doesn't yet exist that the proof operates on. So it really can only check the plumbing after the parsing - which often isn't that much.
In the past when I have used such libraries they have been a pain - especially for loose formats like HTTP headers. Type system come with a cost, you need to carefully consider the burden you are placing on the programmer to see if the benefits out way the cost.