12 ms·
The fatal flaw in your sarcasm is that specs are declarative but those languages are imperative. Those languages also have more syntax than is strictly necessa
by CuriouslyC 4y ago
The fatal flaw in your sarcasm is that specs are declarative but those languages are imperative. Those languages also have more syntax than is strictly necessary, which limits the ability of domain experts to contribute to the spec without the assistance of a developer.
- kristiandupont 4y agoWould the point not stand if they had said ML or Prolog?
- CuriouslyC 4y agoThere would still be the point of requiring knowledge of an arcane syntax that can take months to understand and years to master. It will almost always be more efficient and productive to specify programs in plain English then add additional specifications to clarify ambiguity when observed, rather than trying to write specs in a completely unambiguous language.
- quanticle 4y agothen add additional specifications to clarify ambiguity when observed That's such a clean, almost clinical way to describe, "After the software has caused several billion dollars in trading losses, bankrupting the entire company." (https://en.wikipedia.org/wiki/Knight_Capital_Group#2012_stock_trading_disruption https://en.wikipedia.org/wiki/Knight_Capital_Group#2012_stoc...)
- CuriouslyC 4y agoImagine if software with large inherent risk was developed using formal methods, and the massive remainder of software was developed using rapid development methods. It's almost like there are different tools, and they can be applied to different jobs to cause improved outcomes based on the overlap between the tool's properties and the job's properties. What a radical concept!
- quanticle 4y agoImagine if software with large inherent risk was developed using formal methods, and the massive remainder of software was developed using rapid development methods. Imagine if we could tell the difference between use-cases with large inherent risk and the massive remainder of use-cases and avoid using software designed for low-risk situations in high-risk applications.
- jeltz 4y agoI have worked with systems written primarily in SQL, a declarative language, and I can't say a domain experts could have contributed anymore or less than when I have worked with systems written in Ruby or Java.