Skip to main content

Retrofitting the AutoBayes Program Synthesis System with Concrete Syntax

  • Chapter
Domain-Specific Program Generation

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

Abstract

AutoBayes is a fully automatic, schema-based program synthesis system for statistical data analysis applications. Its core component is a schema library, i.e., a collection of generic code templates with associated applicability constraints which are instantiated in a problem-specific way during synthesis. Currently, AutoBayes is implemented in Prolog; the schemas thus use abstract syntax (i.e., Prolog terms) to formulate the templates. However, the conceptual distance between this abstract representation and the concrete syntax of the generated programs makes the schemas hard to create and maintain.

In this paper we describe how AutoBayes is retrofitted with concrete syntax. We show how it is integrated into Prolog and describe how the seamless interaction of concrete syntax fragments with AutoBayes’s remaining “legacy” meta-programming kernel based on abstract syntax is achieved. We apply the approach to gradually migrate individual schemas without forcing a disruptive migration of the entire system to a different meta-programming language. First experiences show that a smooth migration can be achieved. Moreover, it can result in a considerable reduction of the code size and improved readability of xthe code. In particular, abstracting out fresh-variable generation and second-order term construction allows the formulation of larger continuous fragments.

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. Buntine, W., Fischer, B., Gray, A.G.: Automatic derivation of the multinomial PCA algorithm. Technical report, NASA/Ames (2003), Available at: http://ase.arc.nasa.gov/people/fischer/

  2. Buntine, W.L.: Operations for learning with graphical models. JAIR 2, 159–225 (1994)

    Google Scholar 

  3. Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Quesada, J.F.: Maude: specification and programming in rewriting logic. Theoretical Computer Science 285(2), 187–243 (2002)

    Article  MATH  MathSciNet  Google Scholar 

  4. Cordy, J.R., Carmichael, I.H., Halliday, R.: The TXL Programming Language, Version 8 (April 1995)

    Google Scholar 

  5. van Deursen, A., Heering, J., Klint, P.: Language Prototyping. An Algebraic Specification Approach, September 1996. AMAST Series in Computing, vol. 5. World Scientific, Singapore (1996)

    MATH  Google Scholar 

  6. Fischer, B., Hajian, A., Knuth, K., Schumann, J.: Automatic derivation of statistical data analysis algorithms: Planetary nebulae and beyond. Technical report, NASA/Ames (2003), Available at: http://ase.arc.nasa.gov/people/fischer/

  7. Fischer, B., Schumann, J.: Applying autobayes to the analysis of planetary nebulae images. In: Grundy, J., Penix, J. (eds.) Proc. 18th ASE, Montreal, Canada, October 6-10, pp. 337–342. IEEE Comp. Soc. Press, Los Alamitos (2003)

    Google Scholar 

  8. Fischer, B., Schumann, J.: AutoBayes: A system for generating data analysis programs from statistical models. JFP 13(3), 483–508 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  9. Gray, G., Fischer, B., Schumann, J., Buntine, W.: Automatic derivation of statistical algorithms: The EM family and beyond. In: Becker, S., Thrun, S., Obermayer, K. (eds.) NIPS 15, pp. 689–696. MIT Press, Cambridge (2003)

    Google Scholar 

  10. McLachlan, G., Krishnan, T.: The EM Algorithm and Extensions. Wiley Series in Probability and Statistics. John Wiley & Sons, New York (1997)

    MATH  Google Scholar 

  11. Press, W.H., Flannery, B.P., Teukolsky, S.A., Vetterling, W.T.: Numerical Recipes in C, 2nd edn. Cambridge Univ. Press, Cambridge (1992)

    MATH  Google Scholar 

  12. den van Brand, M.G.J., Scheerder, J., Vinju, J.J., Visser, E.: Disambiguation filters for scannerless generalized LR parsers. In: Horspool, R.N. (ed.) CC 2002. LNCS, vol. 2304, pp. 143–158. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  13. Visser, E.: Program transformation with Stratego/XT. Rules, strategies, tools, and systems in Stratego/XT 0.9. In: Lengauer, C., Batory, D., Consel, C., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 216–238. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  14. Visser, E.: Syntax Definition for Language Prototyping. PhD thesis, University of Amsterdam (September 1997)

    Google Scholar 

  15. Visser, E.: Meta-programming with concrete object syntax. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol. 2487, pp. 299–315. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  16. Visser, E., Benaissa, Z.-e.-A., Tolmach, A.: Building program optimizers with rewriting strategies. In: Proceedings of the third ACM SIGPLAN International Conference on Functional Programming (ICFP 1998), September 1998, pp. 13–26. ACM Press, New York (1998)

    Chapter  Google Scholar 

  17. Whalen, M., Schumann, J., Fischer, B.: Synthesizing certified code. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 431–450. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  18. Wielemaker, J.: SWI-Prolog 5.2.9 Reference Manual, Amsterdam (2003)

    Google Scholar 

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

Fischer, B., Visser, E. (2004). Retrofitting the AutoBayes Program Synthesis System with Concrete Syntax. 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_14

Download citation

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

  • 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