This page presents Wodel examples for the ASPLE language. The corresponding metamodel is available here: ASPLE Language Ecore.

Replaces an arithmetic operator with a different arithmetic operator [rao]:

     modify one BinaryOperator where {operator in ['add', 'subtract', 'multiply', 'divide', 'module']}
            with {operator in ['add', 'subtract', 'multiply', 'divide', 'module']}

Replaces a relational operator with a different relational operator [rro]:

     modify one BinaryOperator where {operator in ['less', 'equals', 'greater', 'distinct']}
            with {operator in ['less', 'equals', 'greater', 'distinct']}

Changes a loop termination condition so that the loop does not terminate [rli]:

     loop = select one Loop
     create Boolean in loop->expression with {value = true}

Deletes a statement [rst]:

     remove one Statement

Changes the value of a scalar variable [rsv]:

     modify one Integer with {value = random}

Increases an arithmetic expression by one [ia1]:

     op = select one BinaryOperator where {operator in ['add', 'subtract', 'multiply', 'divide', 'module']}
     exp = create BinaryOperator in op->right with {left = op->right, operator = 'add'}
     create Integer in exp->right with {value = 1}

Download all the Wodel examples for the ASPLE language here.
ASPLE samples (ZIP)
ASPLE samples (TAR.GZ)

Acknowledgements

This work was funded by the Spanish Ministry of Science through project “MASSIVE” (RTI2018-095255-B-I00), and by the R&D programme of the Madrid Region through project “FORTE” (P2018/TCS-4314).