|
|
|
|
|
by adamnemecek
4390 days ago
|
|
Generally, statically typed languages are less bug prone than dynamically typed languages. Dynamically typed languages are OK for smaller projects but as projects grow in size, you have to write a lot of tests to be sure that everything works. Also, projects written in statically typed languages are easier to read and navigate for humans and it's also easier to write static analysis tools for them. |
|
Or build your large systems as compositions of smaller systems. If dynamically typed languages are really okay for smaller systmes, than avoiding bad architecture of large tightly-coupled systems in favor of loosely coupled compositions of smaller subsystems means that it is also okay for large systems.
> Also, projects written in statically typed languages are easier to read and navigate for humans
This is not my experience.
> and it's also easier to write static analysis tools for them.
Well, yes, since you have to write a static analysis tool for a statically typed language (since the compiler must include such a tool), its not at all surprising that the structure of statically-typed languages is always designed specifically to serve static analysis tools.
IME, that's why they've historically been harder to read and navigate for humans, though some exceptional modern statically typed languages have largely closed that gap (but not reversed it, IMO.)