Attempto Controlled English (ACE)

Attempto Controlled English (ACE)

Though formal methods promise improved quality of software and partial automation of the software development process they are not readily accepted by domain specialists. This applies particularly to formal specifications that are at the very basis of any formal software development. The reasons are twofold -- formal specifications are hard to understand and difficult to relate to the concepts of the application domain. ...

In brief, an ACE specification is formal and at the same time "explains what the specification means in real-world terms and why the specification says what it does".

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Sounds like the Universal Character!

I've often thought this would be a wonderful idea, freeing us from some of the oblique and fuzzy language constructs that result in misunderstandings between end-users and developers.

In some ways, this is a lot like the Philosophical Language (and Universal Character) proposed by Wilkins, and wonderfully illustrated in Neil Stephenson's Quicksilver:

... You can say any sort of nonsense in Latin and our feeble University men will be stunned, or at least profoundly confused. That's how the Popes have gotten away with peddling bad religion for so long -- they simply say it in Latin. But if we were to unfold their convoluted phrases and translate them into a philosophical language, all of their contradictions and vagueness would become manifest.