contract based programming http://www.jacob-sparre.dk/programming/contracts/fosdem-2018-slides #ada #spark
From a software engineering point of view, of course, a program must “work” according to its specifications. But this is not sufficient. The manner in which it is designed and written is as important as whether the program works. The ease with which the software can be changed to upgrade performance, meet additional specifications, or rectify errors that are later discovered is directly related to the quality of design and implementation. The “hot-shot” programmer who can quickly throw together cryptic lines of code that only he or she can understand is of questionable value. The programmer who boasts of using clever tricks to reduce the total number of lines of code has probably missed the point. Computer memory is relatively cheap, whereas the modification of software (a process greatly enhanced by program clarity) is generally expensive. Thus, given a choice between a little less economy of code or greater program clarity, the latter is often preferred.
From the ‘Software Engineering with Modula-2 and Ada’ by Wiener and Sincovec.
#programming #modula-2 #ada #wiener #sincovec #quote
one better than the other.
#book #books #programming #photo #modula #modula-2 #modula-3 #ada #components #algorithms
A striking example of this phenomenon has recently been provided by Ada. If Ada is going to provide a standard, that standard had better be unambiguously documented. At least two groups have had a go at it; both efforts resulted in formal texts of about 600 pages, i.e. many times longer than needed to ensure the impossibility of ever establishing firmly that the two documents define the same programming language. The fault of the patent unmanageability of these two documents lies neither with the two groups that composed them, nor with the formalisms they have adopted, but entirely with the language itself: only by not providing a formal definition themselves, could its designers hide that they were proposing an unmanageable monstrum. That Ada will decrease the pain of programming and increase the trustworthiness of our designs to within acceptable limits is one of those fictions for which a military education is needed in order to believe in it.
#ada #programming #dod #design #programming_languages #programming #dijkstra
it is an old paper and I like it a lot.
A Comparison of Ada and Pascal in an Introductory Computer Science Course http://www.sigada.org/conf/sa98/papers/murtagh.pdf
#ada #pascal #programming #teaching #education #computer_science #paper
For the exact reasons the pi-dividers complain about, the planes, in fact, do not crash. Pi-dividers: Please do not apply for a job where my money or my life will depend on your code.
comment from this blog post.
#ada #programming #types #safety #code #pi #typing