For certain data you can exhaust the space of values and thoroughly test that your parser validates only the correct datatypes, and if you can do that, then you can be fearless in your impl with those "fancy type systems" because you guarantee that within the context of the impl, the software is sound. See [1], and the respective discussion here [2].
[1] https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-va...
[2] https://news.ycombinator.com/item?id=35053118