Skip to main content

A Personal Outlook on Generator Research

  • Chapter
Domain-Specific Program Generation

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3016))

Abstract

If we want domain-specific program generation to form the basis of a strong, long-lived research community, we need to recognize what its potential impact might be and why the promise has not been fulfilled so far. In this chapter, I review my past work on generators and I present a collection of personal opinions on the symptoms convincing me that there is room for improvement in the generators research community. Then I analyze the causes of these symptoms, some of which are inherent, while some others can be overcome. A major cause of difficulty is the inherent domain-specificity of generators that often makes research work be less valuable to other generator writers who are unfamiliar with the domain. I propose directions on what should be considered promising research for the community, what I believe are useful principles for generator design, and what community building measures we can take.

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

Access this chapter

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 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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aitken, W., Dickens, B., Kwiatkowski, P., de Moor, O., Richter, D., Simonyi, C.: Transformation in Intentional Programming. In: Devanbu, P., Poulin, J. (eds.) Proc. 5th International Conference on Software Reuse (ICSR 1998), pp. 114–123. IEEE CS Press, Los Alamitos (1998)

    Google Scholar 

  2. Basset, P.: Framing Software Reuse: Lessons from the Real World. Yourdon Press, Prentice Hall (1997)

    Google Scholar 

  3. Batory, D., Lofaso, B., Smaragdakis, Y.: JTS: Tools for Implementing Domain-Specific Languages. In: Devanbu, P., Poulin, J. (eds.) Proc. 5th International Conference on Software Reuse (ICSR 1998), pp. 143–155. IEEE CS Press, Los Alamitos (1998)

    Google Scholar 

  4. Batory, D., Chen, G., Robertson, E., Wang, T.: Design Wizards and Visual Programming Environments for GenVoca Generators. IEEE Transactions on Software Engineering 26(5), 441–452 (2000)

    Article  Google Scholar 

  5. Clinger, W., Rees, J.: Macros that work. In: Eighteenth Annual ACM Symposium on Principles of Programming Languages (PoPL 1991), pp. 155–162. ACM Press, New York (1991)

    Google Scholar 

  6. Czarnecki, K., Eisenecker, U.: Generative Programming: Methods, Techniques, and Applications. Addison-Wesley, Reading (2000)

    Google Scholar 

  7. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An Overview of AspectJ. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, p. 327. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  8. Kohlbecker, E., Friedman, D.P., Felleisen, M., Duba, B.: Hygienic macro expansion. In: Gabriel, R.P. (ed.) Proc. ACM SIGPLAN 1986 Conference on Lisp and Functional Programming, pp. 151–161. ACM Press, New York (1986)

    Chapter  Google Scholar 

  9. McNamara, B., Smaragdakis, Y.: Functional programming in C++. In: Wadler, P. (ed.) Proc. ACM SIGPLAN 5th International Conference on Functional Programming (ICFP 2000), pp. 118–129. ACM Press, New York (2000)

    Chapter  Google Scholar 

  10. McNamara, B., Smaragdakis, Y.: Functional Programming with the FC++ Library. Journal of Functional Programming (JFP), Cambridge University Press (to appear)

    Google Scholar 

  11. Simonyi, C.: The Death of Computer Languages, the Birth of Intentional Programming. In: NATO Science Committee Conference (1995)

    Google Scholar 

  12. Smaragdakis, Y., Batory, D.: DiSTiL: a Transformation Library for Data Structures. In: Ramming, J.C. (ed.) Conference on Domain-Specific Languages (DSL 1997), pp. 257–269. Usenix Association (1997)

    Google Scholar 

  13. Smaragdakis, Y., Batory, D.: Implementing Reusable Object-Oriented Components. In: Devanbu, P., Poulin, J. (eds.) Proc. 5th International Conference on Software Reuse (ICSR 1998), pp. 36–45. IEEE CS Press, Los Alamitos (1998)

    Google Scholar 

  14. Smaragdakis, Y., Batory, D.: Implementing Layered Designs with Mixin Layers. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, pp. 550–570. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  15. Smaragdakis, Y., Batory, D.: Application Generators. In: Webster, J.G. (ed.) Encyclopedia of Electrical and Electronics Engineering. John Wiley and Sons, Chichester (2000)

    Google Scholar 

  16. Smaragdakis, Y., Batory, D.: Scoping Constructs for Program Generators. In: Czarnecki, K., Eisenecker, U.W. (eds.) GCSE 1999. LNCS, vol. 1799, pp. 65–78. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  17. Smaragdakis, Y., Batory, D.: Mixin Layers: an Object-Oriented Implementation Technique for Refinements and Collaboration-Based Designs. ACM Trans. Softw. Eng. and Methodology (TOSEM) 11(2), 215–255 (2002)

    Article  Google Scholar 

  18. Tilevich, E., Urbanski, S., Smaragdakis, Y., Fleury, M.: Aspectizing Server-Side Distribution. In: Proc. 18th IEEE Automated Software Engineering Conference (ASE 2003), pp. 130–141. IEEE CS Press, Los Alamitos (2003)

    Chapter  Google Scholar 

  19. Veldhuizen, T.: Scientific Computing in Object-Oriented Languages web page, http://www.oonumerics.org/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Smaragdakis, Y. (2004). A Personal Outlook on Generator Research. In: Lengauer, C., Batory, D., Consel, C., Odersky, M. (eds) Domain-Specific Program Generation. Lecture Notes in Computer Science, vol 3016. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-25935-0_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-25935-0_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22119-7

  • Online ISBN: 978-3-540-25935-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics