3 ms·
It's shocking how little effort is put into developing static analysis compared to the insufferable amount of type system work that goes on Here we're discussi
by slifin 7y ago
It's shocking how little effort is put into developing static analysis compared to the insufferable amount of type system work that goes on
Here we're discussing destroying a data format and replacing it with a programming language because we can't be bothered to do static analysis on a data format?
LSP should have made this the golden era of static analysis, but instead everyone conflates type systems and static analysis so the industry gets myopic on typescript and friends
If you took static analysis out of typescript I wouldn't even give typescript a second look, meanwhile something like this where a given key should be one of a set we don't even consider how to do that without a type system
A data format doesn't have a type system and that's partly why they're great, type systems don't work across different programming languages but data does, data is a shared composable language
Data as a concept is more important than a type system and static analysis is more important than a type system
- rfoo 7y agoSorry, but I don't get how you express constraints you want your static analysis to enforce in stringly typed "data format" without out of the "format" type system e.g. JSON schema. Mind giving some hints? Static analysis is not magic, they need some more inputs other than your code. I can't say for sure but Rust's success told me at least some people are happy to write annotations specifically targeted at static analyzer (Lifetime etc).
- int_19h 7y agoCan you define "static analysis" here? It sounds like you're talking about data schemas otherwise, but if you apply them statically, the end result is a type system, no? (XSLT/XQuery would be one example of that)