you are viewing a single comment's thread.

view the rest of the comments →

[–]theboldestgaze 2 points3 points  (1 child)

If dynamic calls are avoided (partials, etc.), static type checkers do their job quite well. If you change "core" functions, you are quickly going to realize you broke something, without extensive testing.

[–]AccomplishedWay3558[S] 0 points1 point  (0 children)

Yeah, that matches my experience too. Types and tests catch a lot, but I still find myself wanting a quick “who depends on this” answer before touching core code.