Domain-Specific Profiling

  • Alexandre Bergel
  • Oscar Nierstrasz
  • Lukas Renggli
  • Jorge Ressia
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6705)


Domain-specific languages and models are increasingly used within general-purpose host languages. While traditional profiling tools perform well on host language code itself, they often fail to provide meaningful results if the developers start to build and use abstractions on top of the host language. In this paper we motivate the need for dedicated profiling tools with three different case studies. Furthermore, we present an infrastructure that enables developers to quickly prototype new profilers for their domain-specific languages and models.


Virtual Machine Performance Impact Production Coverage Instrumentation Strategy Host Language 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Arnold, M., Ryder, B.G.: A framework for reducing the cost of instrumented code. In: Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation, PLDI 2001, pp. 168–179. ACM, New York (2001)CrossRefGoogle Scholar
  2. 2.
    Bergel, A., Ducasse, S., Putney, C., Wuyts, R.: Creating sophisticated development tools with OmniBrowser. Journal of Computer Languages, Systems and Structures 34(2-3), 109–129 (2008)CrossRefGoogle Scholar
  3. 3.
    Bunge, P.: Scripting Browsers with Glamour. Master’s thesis, University of Bern (April 2009)Google Scholar
  4. 4.
    Cuadrado, J.S., Molina, J.G.: A model-based approach to families of embedded domain specific languages. IEEE Transactions on Software Engineering 99(1) (2009)Google Scholar
  5. 5.
    van, A., Klint, P., Deursen, J.V.: Domain-specific languages: An annotated bibliography. ACM SIGPLAN Notices 35(6), 26–36 (2000)CrossRefGoogle Scholar
  6. 6.
    Freeman, S., Pryce, N.: Evolving an embedded domain-specific language in Java. In: OOPSLA 2006: Companion to the 21st Symposium on Object-Oriented Programming Systems, Languages, and Applications, pp. 855–865. ACM Press, Portland (2006)Google Scholar
  7. 7.
    Gupta, A., Hwu, W.-M.W.: Xprof: profiling the execution of X Window programs. In: Proceedings of the 1992 ACM SIGMETRICS Joint International Conference on Measurement and Modeling Of Computer Systems, SIGMETRICS 1992/PERFORMANCE 1992, pp. 253–254. ACM, New York (1992)Google Scholar
  8. 8.
    Kabanov, J., Raudjärv, R.: Embedded typesafe domain specific languages for Java. In: PPPJ’08: Proceedings of the 6th International Symposium on Principles and Practice of Programming in Java, pp. 189–197. ACM Press, Modena (2008)Google Scholar
  9. 9.
    Lanza, M., Ducasse, S.: Polymetric views—a lightweight visual approach to reverse engineering. Transactions on Software Engineering (TSE) 29(9), 782–795 (2003)CrossRefGoogle Scholar
  10. 10.
    Meyer, M., Gîrba, T., Lungu, M.: Mondrian: An agile visualization framework. In: ACM Symposium on Software Visualization (SoftVis 2006), pp. 135–144. ACM Press, New York (2006)CrossRefGoogle Scholar
  11. 11.
    Renggli, L., Ducasse, S., Gîrba, T., Nierstrasz, O.: Domain-specific program checking. In: Vitek, J. (ed.) TOOLS 2010. LNCS, vol. 6141, pp. 213–232. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  12. 12.
    Renggli, L., Ducasse, S., Gîrba, T., Nierstrasz, O.: Practical dynamic grammars for dynamic languages. In: 4th Workshop on Dynamic Languages and Applications (DYLA 2010), Malaga, Spain (June 2010)Google Scholar
  13. 13.
    Renggli, L., Gîrba, T., Nierstrasz, O.: Embedding languages without breaking tools. In: D’Hondt, T. (ed.) ECOOP 2010. LNCS, vol. 6183, pp. 380–404. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  14. 14.
    Ressia, J., Renggli, L., Gîrba, T., Nierstrasz, O.: Run-time evolution through explicit meta-objects. In: Proceedings of the 5th Workshop on Models@run.time at the ACM/IEEE 13th International Conference on Model Driven Engineering Languages and Systems (MODELS 2010), pp. 37–48 (October 2010)Google Scholar
  15. 15.
    Röthlisberger, D., Denker, M., Tanter, É.: Unanticipated partial behavioral reflection: Adapting applications at runtime. Journal of Computer Languages, Systems and Structures 34(2-3), 46–65 (2008)CrossRefGoogle Scholar
  16. 16.
    Tanter, É., Noyé, J., Caromel, D., Cointe, P.: Partial behavioral reflection: Spatial and temporal selection of reification. In: Proceedings of OOPSLA 2003, ACM SIGPLAN Notices, pp. 27–46 (2003)Google Scholar
  17. 17.
    Tisi, M., Cabot, J., Jouault, F.: Improving higher-order transformations support in ATL. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 215–229. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  18. 18.
    Visser, E.: Program transformation with stratego/XT. In: Lengauer, C., Batory, D., Blum, A., Vetta, A. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 216–238. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Alexandre Bergel
    • 1
  • Oscar Nierstrasz
    • 2
  • Lukas Renggli
    • 1
  • Jorge Ressia
    • 2
  1. 1.PLEIAD Lab, Department of Computer Science (DCC)University of ChileChile
  2. 2.Software Composition GroupUniversity of BernSwitzerland

Personalised recommendations