Earlier quoted context omitted.
This is almost always framed in a way that shows large systems need the extra rigidity of some static systems. And that dynamic systems are only about rapid prototyping. I think that is a bit of a false framing. To wit, any system of 100k LOC will be hard to get into. Even harder to make changes in. There is no getting around that. None. Even worse if you have many entities flying about these 100k LOC. Each change to…
> any system of 100k LOC will be hard to get into To get a gut feeling of the system, i.e., to understand the 10000 foot view of a 100k LOC system, is orders of magnitude easier with statically typed languages than dynamic languages. And that is mostly because those 100k LOC are done by probably dozens of developers and that leads to different styles, approaches, conventions, etc. A statically typed language would re…
This is no different from any system. Want to know how your car works? Start with a simplified diagram and gradually add more details.
Cars and other equipment are an amusing case study. What is the strongly typed version of a car schematics? Why does it look so different from what we think the idealized software should look like?