Advertisement

Towards Interactive Compilation Models

  • Steven SmythEmail author
  • Alexander Schulz-Rosengarten
  • Reinhard von Hanxleden
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11244)

Abstract

A chain of model-to-model transformations prescribes a particular work process, while executing such a chain generates a concrete instance of this process. Modeling the entire development process itself on a meta-model level extends the possibilities of the model-based approach to guide the developer. Besides refining tools for model creation, this kind of meta-modeling also facilitates debugging, optimization, and prototyping of new compilations. A compiler is such a process system. In this paper, we share the experiences gathered while we worked on the model-based reference compiler of the kieler SCCharts project and ideas towards a unified view on similar prescribed processes.

References

  1. 1.
    Aho, A.V., Sethi, R., Ullman, J.D.: Compilers — Principles, Techniques, and Tools. Addison-Wesley, Reading (1986)zbMATHGoogle Scholar
  2. 2.
    Allen, F.E.: Control flow analysis. In: Proceedings of a Symposium on Compiler Optimization, pp. 1–19. ACM, New York (1970)Google Scholar
  3. 3.
    Chaitin, G.J., Auslander, M.A., Chandra, A.K., Cocke, J., Hopkins, M.E., Markstein, P.W.: Register allocation via coloring. Comput. Lang. 6(1), 47–57 (1981)CrossRefGoogle Scholar
  4. 4.
    Curcin, V., Ghanem, M., Guo, Y.: The design and implementation of a workflow analysis tool. Philos. Trans. R. Soc. Lond. A Math. Phys. Eng. Sci. 368(1926), 4193–4208 (2010)CrossRefGoogle Scholar
  5. 5.
    Fuhrmann, H., von Hanxleden, R.: On the pragmatics of model-based design. In: Choppy, C., Sokolsky, O. (eds.) Monterey Workshop 2008. LNCS, vol. 6028, pp. 116–140. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-12566-9_7CrossRefGoogle Scholar
  6. 6.
    Grundy, J.C., Hosking, J., Li, K.N., Ali, N.M., Huh, J., Li, R.L.: Generating domain-specific visual language tools from abstract visual specifications. IEEE Trans. Softw. Eng. 39(4), 487–515 (2013)CrossRefGoogle Scholar
  7. 7.
    Lee, E.A., Neuendorffer, S., Wirthlin, M.J.: Actor-oriented design of embedded hardware and software systems. J. Circ. Syst. Comput. (JCSC) 12(3), 231–260 (2003)CrossRefGoogle Scholar
  8. 8.
    Motika, C.: SCCharts–Language and Interactive Incremental Implementation. Number 2017/2 in Kiel Computer Science Series. Department of Computer Science: Dissertation, Faculty of Engineering, Christian-Albrechts-Universität zu Kiel (2017)Google Scholar
  9. 9.
    Motika, C., Smyth, S., von Hanxleden, R.: Compiling SCCharts—a case-study on interactive model-based compilation. In: Margaria, T., Steffen, B. (eds.) ISoLA 2014, Part I. LNCS, vol. 8802, pp. 461–480. Springer, Heidelberg (2014).  https://doi.org/10.1007/978-3-662-45234-9_32CrossRefGoogle Scholar
  10. 10.
    Naujokat, S., Lybecait, M., Kopetzki, D., Steffen, B.: Cinco: a simplicity-driven approach to full generation of domain-specific graphical modeling tools. Int. J. Softw. Tools Technol. Transf. 20(3), 327–354 (2018)CrossRefGoogle Scholar
  11. 11.
    Oinn, T., et al.: Taverna: a tool for the composition and enactment of bioinformatics workflows. Bioinformatics 20(17), 3045–3054 (2004)CrossRefGoogle Scholar
  12. 12.
    Rahimi-Barfeh, M.: Incremental compilation of SCEst. Bachelor thesis, Kiel University, Department of Computer Science, September 2017. http://rtsys.informatik.uni-kiel.de/~biblio/downloads/theses/mrb-bt.pdf
  13. 13.
    Rybicki, F., Smyth, S., Motika, C., Schulz-Rosengarten, A., von Hanxleden, R.: Interactive model-based compilation continued – interactive incremental hardware synthesis for SCCharts. In: Proceedings of the 7th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (ISoLA 2016). LNCS, vol. 8802, Corfu, Greece, pp. 443–462, October 2016Google Scholar
  14. 14.
    Schneider, C., Spönemann, M., von Hanxleden, R.: Just model! – Putting automatic synthesis of node-link-diagrams into practice. In: Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2013), San Jose, CA, USA, pp. 75–82, September 2013Google Scholar
  15. 15.
    Smyth, S., Schulz-Rosengarten, A., von Hanxleden, R.: Watch your compiler work — compiler models and environments. Technical report 1806, Christian-Albrechts-Universität zu Kiel, Department of Computer Science, July 2018. ISSN 2192-6247Google Scholar
  16. 16.
    Steffen, B.: Unifying models. In: STACS 1997, 14th Annual Symposium on Theoretical Aspects of Computer Science, Lübeck, Germany, pp. 1–20, March 1997Google Scholar
  17. 17.
    Steffen, B., Margaria, T., Braun, V.: The electronic tool integration platform: concepts and design. Int. J. Softw. Tools Technol. Transf. 1(1), 9–30 (1997)CrossRefGoogle Scholar
  18. 18.
    von Hanxleden, R., et al.: SCCharts: sequentially constructive Statecharts for safety-critical applications. In: Proceedings of ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2014), Edinburgh, UK, pp. 372–383. ACM, June 2014Google Scholar
  19. 19.
    von Hanxleden, R., Lee, E.A., Motika, C., Fuhrmann, H.: Multi-view modeling and pragmatics in 2020 — position paper on designing complex cyber-physical systems. In: Calinescu, R., Garlan, D. (eds.) Monterey Workshop 2012. LNCS, vol. 7539, pp. 209–223. Springer, Heidelberg (2012).  https://doi.org/10.1007/978-3-642-34059-8_11CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Steven Smyth
    • 1
    Email author
  • Alexander Schulz-Rosengarten
    • 1
  • Reinhard von Hanxleden
    • 1
  1. 1.Real-Time and Embedded Systems Group, Department of Computer ScienceChristian-Albrechts-Universität zu KielKielGermany

Personalised recommendations