OCL 2.5 RTF Avatar
  1. OMG Issue

OCL25 — Are failures invalid?

  • Key: OCL25-209
  • Status: open  
  • Source: Model Driven Solutions ( Ed Willink)
  • Summary:

    OCL is an executable specification language that uses "invalid" as its exception handling mechanism for untoward execution, which clearly includes deterministic internal program control faults:

    • divide by zero
    • null-navigation
    • ordered collection index out of bounds
      Does this behavior also include non-deterministic external problems:
    • network/disk access failure
    • stack overflow
    • tooling malfunction

    Without an answer to this question, it i impossible to know whether e.g. "aSequence->includes->last()" can be optimized to "x" or not. Is it necessary to fully evaluate aSequence, perhaps run out of memory, in order to incur an external issue that influences an evaluation?

  • Reported: OCL 2.4 — Mon, 26 Dec 2016 09:45 GMT
  • Updated: Wed, 28 Dec 2016 15:46 GMT