Categorical Descriptional Composition

  • Shin-ya Katsumata
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6461)

Abstract

Descriptional composition is a method to fuse two term transformation algorithms described by attribute couplings (AC, attribute grammars over terms) into one. In this article, we provide a general categorical framework for the descriptional composition based on traced symmetric monoidal categories and the construction by Joyal et al. We demonstrate that this framework can handle the descriptional composition of SSUR-ACs, nondeterministic SSUR-ACs, quasi-SSUR ACs and quasi-SSUR stack ACs.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bartha, M.: Linear deterministic attributed transformations. Acta Cybern. 6, 125–147 (1983)MathSciNetMATHGoogle Scholar
  2. 2.
    Blackwell, R., Kelly, G.M., Power, A.J.: Two-dimentional monad theory. Journal of pure and applied algebra 59, 1–41 (1989)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Boyland, J.: Conditional attribute grammars. ACM Trans. Program. Lang. Syst. 18(1), 73–108 (1996)CrossRefGoogle Scholar
  4. 4.
    Chirica, L.M., Martin, D.F.: An order-algebraic definition of Knuthian semantics. Mathematical Systems Theory 13, 1–27 (1979)MathSciNetCrossRefMATHGoogle Scholar
  5. 5.
    Courcelle, B., Deransart, P.: Proofs of partial correctness for attribute grammars with applications to recursive procedures and logic programming. Inf. Comput. 78(1), 1–55 (1988)MathSciNetCrossRefMATHGoogle Scholar
  6. 6.
    Ganzinger, H.: Increasing modularity and language-independency in automatically generated compilers. Sci. Comput. Program. 3(3), 223–278 (1983)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Ganzinger, H., Giegerich, R.: Attribute coupled grammars. In: SIGPLAN Symposium on Compiler Construction 1984, pp. 157–170. ACM, New York (1984)CrossRefGoogle Scholar
  8. 8.
    Giegerich, R.: Composition and evaluation of attribute coupled grammars. Acta Inf. 25(4), 355–423 (1988)MathSciNetCrossRefMATHGoogle Scholar
  9. 9.
    Hasegawa, M.: Models of Sharing Graphs: A Categorical Semantics of let and letrec. Springer, Heidelberg (1999)CrossRefMATHGoogle Scholar
  10. 10.
    Johnsson, T.: Attribute grammars as a functional programming paradigm. In: Kahn, G. (ed.) FPCA 1987. LNCS, vol. 274, pp. 154–173. Springer, Heidelberg (1987)CrossRefGoogle Scholar
  11. 11.
    Joyal, A., Street, R., Verity, D.: Traced monoidal categories. Mathematical Proceedings of the Cambridge Philosophical Society 119(3), 447–468 (1996)MathSciNetCrossRefMATHGoogle Scholar
  12. 12.
    Katsumata, S.: Attribute grammars and categorical semantics. In: Aceto, L., Damgård, I., Goldberg, L.A., Halldórsson, M.M., Ingólfsdóttir, A., Walukiewicz, I. (eds.) ICALP 2008, Part II. LNCS, vol. 5126, pp. 271–282. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  13. 13.
    Katsumata, S., Nishimura, S.: Algebraic fusion of functions with an accumulating parameter and its improvement. In: Reppy, J.H., Lawall, J.L. (eds.) ICFP, pp. 227–238. ACM, New York (2006)Google Scholar
  14. 14.
    Knuth, D.E.: Semantics of context-free languages. Mathematical Systems Theory 2(2), 127–145 (1968)MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    Knuth, D.E.: Correction: Semantics of context-free languages. Mathematical Systems Theory 5(1), 95–96 (1971)MathSciNetCrossRefMATHGoogle Scholar
  16. 16.
    Kock, A.: Strong functors and monoidal monads. Archiv. der Math. 23(1), 113–120 (1972)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    MacLane, S.: Categories for the Working Mathematician, 2nd edn. Graduate Texts in Mathematics, vol. 5. Springer, Heidelberg (1998)MATHGoogle Scholar
  18. 18.
    Nakano, K.: Composing stack-attributed tree transducers. Theory Comput. Syst. 44(1), 1–38 (2009)MathSciNetCrossRefMATHGoogle Scholar
  19. 19.
    Nishimura, S.: Deforesting in accumulating parameters via type-directed transformations. In: APLAS 2002, pp. 145–159 (2002)Google Scholar
  20. 20.
    Nishimura, S., Nakano, K.: XML stream transformer generation through program composition and dependency analysis. Sci. Comput. Program. 54(2-3), 257–290 (2005)MathSciNetCrossRefMATHGoogle Scholar
  21. 21.
    Tanaka, M., Power, J.: Pseudo-distributive laws and axiomatics for variable binding. Higher-Order and Symbolic Computation 19(2-3), 305–337 (2006)CrossRefMATHGoogle Scholar
  22. 22.
    Voigtländer, J.: Using circular programs to deforest in accumulating parameters. Higher-Order and Symbolic Computation 17(1-2), 129–163 (2004)CrossRefMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Shin-ya Katsumata
    • 1
  1. 1.Research Institute for Mathematical SciencesKyoto UniversityKyotoJapan

Personalised recommendations