I think we need many different little languages and a substrate "language" (kernel) to bolt them all together. Note that, in electronics, there is/was something called "design rules" which is something more-than-type. In web-site design, one uses "input validation" which is like type-checking but on a very per-project basis. It would be nice to be able to bolt design-rule checkers together using a palette of existing components. Again, it seems that one should want a palette of components to help build up design rule checkers and completely different palette of components to build up actions. I would expect to use different "syntaxes" for each concern and would expect to use IDE layers to deal with each kind of issue separately then let the IDE automagically stitch them together. This is just another way of saying "I would like to use a different language (SCN in my words) to deal with each kind of issue". Would I use text-based SCNs exclusively? No. But, for text-based SCNs, I would use Ohm-JS and for diagrammatic SCNs I would start by using draw.io. Both kinds of syntaxes are "easy" now, so there is no reason not to build project-specific SCNs. We have been indoctrinated to believe that "one language to rule them all" GPLs is the way to go. I don't agree.