Skip to main content
Log in

Nautilus, a Concurrent Diagrammatic Specification and Programming Language

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Nautilus is a high-level specification and programming language having abstraction mechanisms not commonly found in other programming languages inspired by its semantic domain (a categorial model named Nonsequential Automata). It constitutes an elegant solution for concurrency and non-determinism as well as for synchronization of concurrent systems. The role as specification language highlights the diagrammatic syntax (it was originally text based).The diagrammatic syntax for Nautilus allows complete programs to be written using symbols and graphical diagrams. The graphical notation was elaborated in order to be able to express all the structures in the language, yet trying to improve the visualization of written programs. A brief comparison with UML is included. To support Nautilus as a programming language, a mapping to Java is constructed, setting the basis for an execution environment of Nautilus specifications.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. M. Barr and C. Wells. Category Theory for Computing Science. Prentice Hall, 1990.

  2. C. Carneiro, T. Veit, P. B. Menezes, and F. D’Andrea. Nautilus: its concurrent and distributed characteristics as an academic language. In H.R. Arabnia, ed., Proc. of International Conf. on Parallel and Distributed Processing Techniques and Application. CSREA, Vol. 4, pp. 1919–1925, 1999.

  3. F. D’Andrea, P. B. Menezes, C. N. Fuzitaki, J. P. Machado, and S. A. da Costa. Nautilus, a diagrammatic specification and programming language. In S.G. Akl, T. Gonzalez, eds., Proc. of 14th International Conference on Parallel and Distributed Computing and Systems, ACTA Press pp. 386–391, 2002.

  4. D. M. Dubois. Review of incursive, hyperincursive and anticipatory systems. In D.M. Dubois, ed., Proc. of 3th International Conference on Computing Anticipatory Systems. Volume 517 of AIP Conference Proceedings., Melville, American Institute of Physics, pp. 3–30, 2000.

  5. M. Fowler and S. Kendall. UML Distilled. Addison-Wesley, 1997.

  6. C. N. Fuzitaki, P. B. Menezes, and J. P. Machado. A protocol checker for nautilus language. In H.R. Arabnia, ed., Proc. of International Conf. on Parallel and Distributed Processing Techniques and Application. CSREA, Vol. 3, pp. 1336–1341, 2004.

  7. C. N. Fuzitaki, P. B. Menezes, J. P. Machado, and S. A. da Costa, Mapping nautilus language into java: Towards a specification and programming environment for distributed systems. In R.M. Diaz, F. Pichler, eds., Proc. of 9th International Conference on Computer Aided Systems Theory and Technology. Springer-Verlag, Volume 2809 of Lecture Notes in Computer Science., pp. 243–252, 2003.

  8. P. B. Menezes. Compositional reification of concurrent, interacting systems. In H.R. Arabnia, ed., In Proc. of International Conf. on Parallel and Distributed Processing Techniques and Application. CSREA, Vol. 4, pp. 1754–1761, 1998.

  9. P. B. Menezes and J. F. Costa. Compositional reification of concurrent systems. Journal of the Brazilian Computer Society, 2:50–67, 1995.

    Google Scholar 

  10. P. B. Menezes, J. F. Costa, and A. Sernadas. Refinement mapping for general (discrete event) system theory. In F. Pichler, R.M. Diaz, R. Albrecht, eds., Proc. of 5th International Conference on Computer Aided Systems Theory and Technology. Volume 1030 of Lecture Notes in Computer Science., Springer-Verlag, pp. 103–116, 1996.

  11. P. B. Menezes, S. A. da Costa, J. P. Machado, and J. Ramos. Nautilus: a concurrent anticipatory programming language. In D.M. Dubois, ed., Proc. of 5th International Conference on Computing Anticipatory Systems. Volume 627 of AIP Conference Proceedings., Melville, American Institute of Physics, pp. 553–564, 2002.

  12. P. B. Menezes, J. P. Machado, and S. A. da Costa. Explicit and implicit nondeterministic refinement for concurrent, interacting systems. In H.R. Arabnia, ed., Proc. of International Conf. on Parallel and Distributed Processing Techniques and Application, CSREA, 2002.

  13. J. Meseguer and U. Montanari. Petri nets are monoids. Information and Computation 88; pp. 105–155, 1990.

    Article  MathSciNet  Google Scholar 

  14. P. B. Menezes, A. Sernadas, and J. F. Costa. Refinement in a concurrent object-based language. In R. da Silva Bigonha, ed., Proc. of I Brazilian Symposium on Programming Language. SBC, Vol. 1., pp. 237–250, 1996.

  15. P. B. Menezes, J. F. Costa, and A. Sernadas, Nonsequential automata semantics for concurrent, object-based language. In R. Cleaveland, M.W. Mislove, P.S. Mulry, eds., Proc. of 2nd US-Brazil Joint Workshops on the Formal Foundations of Software Systems. Volume 14 of Electronic Notes in Theoretical Computer Science., Elsevier, 1998.

  16. J. Ramos and A. Sernadas. A brief introduction to gnome. Technical Report, Instituto Superior Técnico, Lisboa, 1995.

  17. E. F. Seganfredo, R. Gatto, C. N. Fuzitaki, P. B. Menezes, and D. J. Nunes. An outline to a diagrammatic nautilus environment. In H.R. Arabnia, ed., in Proc. of International Conf. on Parallel and Distributed Processing Techniques and Application. CSREA, Vol. 4., pp. 1726–1731, 2003.

  18. C. Sernadas, P. Gouveia, and A. Sernadas. Oblog: Object-oriented, logic-based conceptual modeling. Technical Report. Instituto Superior Técnico, Lisboa, 1992.

  19. C. Sernadas, P. Resende, P. Gouveia, and A. Sernadas. In-the-large object-oriented design of information systems. In F. V. Assche, B. Moulin, C. Rolland, eds., The Object-Oriented Approach in Information Systems. North-Holland, pp. 209–232, 1991.

  20. G. Winskel and M. Nielsen. Models for Concurrency. In: Handbook of Logic in Computer Science. Oxford University Press, Vol. 4, pp. 1–148, 1995.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Claudio Naoto Fuzitaki.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fuzitaki, C.N., Menezes, P.B., Machado, J.P. et al. Nautilus, a Concurrent Diagrammatic Specification and Programming Language. J Supercomput 36, 51–81 (2006). https://doi.org/10.1007/s11227-006-3068-3

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-006-3068-3

Keywords

Navigation