Skip to main content

Deterministic Lazy Mutable OCL Collections

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10748))

Abstract

The Collection iterations and operations are perhaps the most important part of OCL. It is therefore important for an OCL evaluation tool to provide efficient support for Collections. Unfortunately, some clauses of the OCL specification appear to inhibit efficient or deterministic support. We review the inhibitions and demonstrate a new deterministic and lazy implementation that avoids them.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    The Eclipse OCL class name is currently LazyCollectionValueImpl.

  2. 2.

    Unifying the four concrete eager Collection types by a single lazy replacement is an API breakage that requires Eclipse OCL to make a major version number change. The code for lazy evaluations is therefore only available on the ewillink/509670 branch in the Eclipse OCL GIT repository.

References

  1. Gogolla, M., Hilken, F.: Making OCL collection operations more deterministic with restricting equations. In: 16th International Workshop in OCL and Textual Modeling, Saint-Malo, France, 2 October 2016. http://www.db.informatik.uni-bremen.de/publications/intern/ocl2016-talk-lightning-mg-fh.pdf

  2. Tisi, M., Douence, R., Wagelaar, D.: Lazy evaluation for OCL. In: 15th International Workshop on OCL and Textual Modeling, Ottawa, Canada, 8 September 2015. https://ocl2015.lri.fr/OCL_2015_paper_1111_1115.pdf

  3. Willink, E.: An extensible OCL virtual machine and code generator. In: 2012 Workshop on OCL and Textual Modelling (OCL 2012), Innsbruck, Austria, 30 September 2012. http://st.inf.tu-dresden.de/OCL2012/preproceedings/14.pdf

  4. Willink, E: Local optimizations in eclipse QVTc and QVTr using the micro-mapping model of computation. In: 2nd International Workshop on Executable Modeling, Exe 2016, Saint-Malo, October 2016. http://eclipse.org/mmt/qvt/docs/EXE2016/MicroMappings.pdf

  5. Willink, E.: Safe navigation in OCL. In: 15th International Workshop on OCL and Textual Modeling, Ottawa, Canada, 8 September 2015. https://ocl2015.lri.fr/OCL_2015_paper_1111_1400.pdf

  6. Dresden OCL Project. http://www.dresden-ocl.org/index.php/DresdenOCL

  7. Eclipse OCL Project. https://projects.eclipse.org/projects/modeling.mdt.ocl

  8. Eclipse QVT Declarative Project. https://projects.eclipse.org/projects/modeling.mmt.qvtd

  9. OMG: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification, Version 1.3. OMG Document Number: ptc/16-06-03, June 2016

    Google Scholar 

  10. OMG: Unified Modeling Language (OMG UML), Version 2.5., OMG Document Number: formal/15-03-01, Object Management Group (2015). http://www.omg.org/spec/UML/2.5

  11. Object Constraint Language. Version 2.4., OMG Document Number: formal/2014-02-03, Object Management Group (2009). http://www.omg.org/spec/OCL/2.4

  12. USE: The UML-based Specification Environment. http://useocl.sourceforge.net/w/index.php/Main_Page

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Edward D. Willink .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Willink, E.D. (2018). Deterministic Lazy Mutable OCL Collections. In: Seidl, M., Zschaler, S. (eds) Software Technologies: Applications and Foundations. STAF 2017. Lecture Notes in Computer Science(), vol 10748. Springer, Cham. https://doi.org/10.1007/978-3-319-74730-9_30

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-74730-9_30

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-74729-3

  • Online ISBN: 978-3-319-74730-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics