© University of Kent - Contact | Feedback | Legal | FOI | Cookies
From ACT-ONE to Miranda, a Translation Experiment
Nathan Charles, Howard Bowman, and Simon Thompson
Computer Standards and Interfaces, 19(1):182-196, May 1997.Abstract
It is now almost universally acknowledged that the data language ACT-ONE associated with the formal description technique LOTOS is inappropriate for the purpose of OSI formal description. In response to this the LOTOS restandardisation activity plans to replace ACT-ONE with a functional language. Thus, compatibility between ACT-ONE and the replacement data language becomes an issue.
In response to this, we present an experimental investigation of backward compatibility between ACT-ONE and the new LOTOS data language. Specifically, we investigate translating ACT-ONE data types into the functional language Miranda. Miranda has been chosen as it is a widely used functional programming language and it is close in form to the anticipated new data language.
This work serves as a ``verification of concept'' for translating ACT-ONE to the E-LOTOS data language. It identifies the bounds on embedding ACT-ONE in a functional data language. In particular, it indicates what can be translated and what cannot be translated.
In addition, the paper reveals pertinent issues which can inform the E-LOTOS work. For example, which constructs are needed in E-LOTOS in order to support the class of data type specifications typically made in the LOTOS setting? We conclude with a number of specific recommendations for the E-LOTOS data language.
Download publication 104 kbytesBibtex Record
@article{213, author = {Nathan Charles and Howard Bowman and Simon Thompson}, title = {{From ACT-ONE to Miranda, a Translation Experiment}}, month = {May}, year = {1997}, pages = {182-196}, keywords = {determinacy analysis, Craig interpolants}, note = {}, doi = {}, url = {http://www.cs.kent.ac.uk/pubs/1997/213}, journal = {Computer Standards and Interfaces}, month = {January}, number = {1}, publisher = {North-Holland}, volume = {19}, }