References from the licentiate thesis

Functional Polytypic Programming - Use and Implementation

(The references are also available as a bib file.)
[1]
L. Augustsson. HBC User's Manual. Programming Methodology Group, Department of Computer Sciences, Chalmers, S-412 96 Göteborg, Sweden, 1993. Distributed with the HBC compiler.

[2]
R.C. Backhouse, P.J. de Bruin, P. Hoogendijk, G. Malcolm, T.S. Voermans, and J.C.S.P. van der Woude. Relational catamorphisms. In B. Möller, editor, Constructing Programs from Specifications, pages 287-318. North-Holland, 1991.

[3]
R.C. Backhouse, P.J. de Bruin, P. Hoogendijk, G. Malcolm, T.S. Voermans, and J.C.S.P. van der Woude. Polynomial relators. In Proceedings second Conference on Algebraic Methodology and Software Technology, 1991.

[4]
R.C. Backhouse. An exploration of the Bird--Meertens formalism. Technical Report Computing Science Notes CS 8810, Department of Mathematics and Computing Science, University of Groningen, 1988.

[5]
H. P. Barendregt. Introduction to Generalised Type Systems. J. Functional Programming, 1(2):125-154, April 1991.

[6]
Timothy C. Bell, John G. Cleary, and Ian H. Witten. Text Compression. Prentice Hall, 1990.

[7]
G. Bellè, C.B. Jay, and E. Moggi. Functorial ML. In PLILP '96. Springer-Verlag, 1996. LNCS.

[8]
Patrik Berglund. A polytypic rewriting system. Master's thesis, Chalmers University of Technology, 1996. Forthcoming.

[9]
Richard Bird, Oege de Moor, and Paul Hoogendijk. Generic functional programming with types and relations. Journal of Functional Programming, 6(1):1-28, 1996.

[10]
R.S. Bird. An introduction to the theory of lists. In M. Broy, editor, Logic of Programming and Calculi of Discrete Design, volume F36 of NATO ASI Series, pages 5-42. Springer-Verlag, 1987.

[11]
R.S. Bird. Lectures on constructive functional programming. In M. Broy, editor, Constructive Methods in Computing Science, volume F55 of NATO ASI Series, pages 151-216. Springer-Verlag, 1989.

[12]
Staffan Björk. Polytypic parsing. Master's thesis, University of Göteborg, 1997. Forthcoming.

[13]
C. Böhm and A. Berarducci. Automatic synthesis of typed Lambda -programs on term algebras. Theoretical Computer Science, 39:135-154, 1985.

[14]
Robert D. Cameron. Source encoding using syntactic information source models. IEEE Transactions on Information Theory, 34(4):843-850, 1988.

[15]
R. Cockett and T. Fukushima. About charity. Unpublished article, see http://www.cpsc.ucalgary.ca/projects/charity/home.html, 1992.

[16]
J.F. Contla. Compact coding of syntactically correct source programs. Software --- Practice and Experience, 15(7):625-636, 1985.

[17]
L. Damas and R. Milner. Principal type-schemes for functional programs. In 9th Symposium on Priciples of Programming Languages, POPL '82, pages 207-212, 1982.

[18]
Rod M. Davies and Ian H. Witten. Compressing computer programs. Technical Report 93/7, Department of ComputerScience, University of Waikato, Hamilton, New Zealand, 1993.

[19]
N. Dershowitz. A note on simplification orderings. Information Processing Letters, 9(5):212-215, 1979.

[20]
J. van Dijk. Monadic type inference and experimental type systems. In Thomas Johnsson, editor, Proceedings of The Workshop on the Implementation of Functional Languages '95, pages 281-293, 1995.

[21]
J.H. Fasel, P. Hudak, S. Peyton Jones, and P. Wadler. Sigplan Notices Special Issue on the Functional Programming Language Haskell. ACM SIGPLAN notices, 27(5), 1992.

[22]
Leonidas Fegaras and Tim Sheard. Revisiting catamorphisms over datatypes with embedded functions. In Proceedings Principles of Programming Languages, POPL '96, 1996.

[23]
Leonidas Fegaras. Fusion for free! Technical Report CSE-96-001, Department of Computer Science, Oregon Graduate Institute, 1996. Available by ftp from cse.ogi.ed in /pub/tech-reports/1996/96-001.ps.gz.

[24]
J. Fokker. Functional parsers. In J. Jeuring and E. Meijer, editors, Advanced Functional Programming, volume 925 of Lecture Notes in Computer Science. Springer-Verlag, 1995.

[25]
M.M. Fokkinga. Calculate categorically! In J. van Leeuwen, editor, Proceedings SION Computing Science in the Netherlands, pages 211-230, 1991.

[26]
M.M. Fokkinga. Law and order in algorithmics. PhD thesis, Twente University, 1992.

[27]
M.M. Fokkinga. Monadic maps and folds for arbitrary datatypes. Memoranda Informatica 94-28, University of Twente, June 1994.

[28]
M. M. Fokkinga. Datatype laws without signatures. Mathematical Structures in Computer Science, 6:1-32, 1996.

[29]
P. Freyd. Recursive types reduced to inductive types. In Proceedings Logic in Computer Science, LICS '90, pages 498-507, 1990.

[30]
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns -- Elements of Reusable Object-Oriented Software. Addison-Wesley Publishing Company, 1995.

[31]
T. Hagino. Category Theoretic Approach to Data Types. PhD thesis, University of Edinburgh, 1987.

[32]
Robert Harper and Greg Morrisett. Compiling polymorphism using intensional type analysis. In 22nd Symposium on Priciples of Programming Languages, POPL '95, pages 130-141, 1995.

[33]
Paul Hoogendijk and Roland Backhouse. When do datatypes commute? Unpublished manuscript, Eindhoven University of Technology, 1997.

[34]
James Hook and Tim Sheard. A semantics of compile-time reflection. Oregon Graduate Institute of Science and Technology, Beaverton, OR, USA, 1993.

[35]
Z. Hu, H. Iwasaki, M. Takeichi, and A. Takano. Tupling calculation eliminates multiple data traversals. In Proceedings of the 2nd ACM SIGPLAN International Conference on Functional Programming (ICFP'97), Amsterdam, The Netherlands, 1997. ACM Press.

[36]
J. Hughes. The design of a pretty-printing library. In J. Jeuring and E. Meijer, editors, Advanced Functional Programming, volume 925 of Lecture Notes in Computer Science. Springer-Verlag, 1995.

[37]
Marieke Huisman. The calculation of a polytypic parser. Master's thesis, Utrecht University, 1996. INF/SRC-96-19.

[38]
P. Jansson and J. Jeuring. PolyP - a polytypic programming language extension. In POPL '97: The 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 470-482. ACM Press, 1997.

[39]
P. Jansson and J. Jeuring. Polytypic unification. Submitted for publication. Available from http://www.cse.chalmers.se/~patrikj/poly/unify/, 1997.

[40]
P. Jansson. Polytypism and polytypic unification. Master's thesis, Computing Science, Chalmers University of Technology, 1995. Available from http://www.cse.chalmers.se/~patrikj/poly/masters/.

[41]
C. Barry Jay. Polynomial polymorphism. In Proceedings of the Eighteenth Australasian Computer Science Conference, pages 237-243, 1995.

[42]
C. Barry Jay. A semantics for shape. Science of Computer Programming, 25:251-283, 1995.

[43]
J. Jeuring and P. Jansson. Polytypic programming. In J. Launchbury, E. Meijer, and T. Sheard, editors, Advanced Functional Programming, Second International School, pages 68-114. Springer-Verlag, 1996. LNCS 1129.

[44]
J. Jeuring, G. Hutton, and O. de Moor. Hollum -- a polytypic programming extension to gofer. Code obtainable by ftp from ftp.cs.chalmers.se in the directory pub/users/johanj/, file hollum.tar.Z, 1994.

[45]
J. Jeuring. Algorithms from theorems. In M. Broy and C.B. Jones, editors, Programming Concepts and Methods, pages 247-266. North-Holland, 1990.

[46]
J. Jeuring. Polytypic pattern matching. In Conference Record of FPCA '95, SIGPLAN-SIGARCH-WG2.8 Conference on Functional Programming Languages and Computer Architecture, pages 238-248, 1995.

[47]
Mark P. Jones. Dictionary-free overloading by partial evaluation. In ACM SIGPLAN Workshop on Partial Evaluation and Semantics-Based Program Manipulation, Orlando, Florida, June 1994.

[48]
Mark P. Jones. Qualified Types: Theory and Practice. Cambridge University Press, 1994.

[49]
Mark P. Jones. Functional programming with overloading and higher-order polymorphism. In J. Jeuring and E. Meijer, editors, Advanced Functional Programming, Lecture Notes in Computer Science 925, pages 97-136. Springer-Verlag, 1995.

[50]
Mark P. Jones. Gofer. Available via ftp on ftp.cs.nott.ac.uk, 1995.

[51]
Mark P. Jones. A system of constructor classes: overloading and implicit higher-order polymorphism. Journal of Functional Programming, pages 1-35, 1995.

[52]
J. Katajainen, M. Penttonen, and J. Teuhola. Syntax-directed compression of program files. Software-Practice and Experience, 16(3):269-276, 1986.

[53]
J.W. Klop. Term rewriting systems. In Handbook of Logic in Computer Science, pages 1-116. Oxford University Press, 1992.

[54]
K. Knight. Unification: A multidisciplinary survey. Computing Surveys, 21(1):93-124, 1989.

[55]
D.E. Knuth and P.B. Bendix. Simple word problems in universal algebras. In J. Leech, editor, Computational Problems in Abstract Algebra, pages 263-297. Pergamon Press, 1970.

[56]
D.J. Lehmann and M.B. Smyth. Algebraic specification of data types: A synthetic approach. Math. Systems Theory, 14:97-139, 1981.

[57]
K.J. Lieberherr, I. Silva-Lepe, and C. Xiao. Adaptive object-oriented programming --- using graph-based customization. Communications of the ACM, pages 94-101, 1994.

[58]
G. Malcolm. Homomorphisms and promotability. In J.L.A. van de Snepscheut, editor, Mathematics of Program Construction, pages 335-347. Springer-Verlag, 1989. LNCS 375.

[59]
G. Malcolm. Data structures and program transformation. Science of Computer Programming, 14:255-279, 1990.

[60]
E.G. Manes and M.A. Arbib. Algebraic Approaches to Program Semantics. Text and Monographs in Computer Science. Springer Verlag, 1986.

[61]
A. Martelli, C. Moiso, and C.F. Rossi. An algorithm for unification in equational theories. In Proc. Symposium on Logic Programming, pages 180-186, 1986.

[62]
L. Meertens. Algorithmics --- towards programming as a mathematical activity. In J.W. de Bakker, M. Hazewinkel, and J.K. Lenstra, editors, Proceedings of the CWI Symposium on Mathematics and Computer Science, volume 1 of CWI Monographs, pages 289-334. North-Holland, 1986.

[63]
L. Meertens. Paramorphisms. Formal Aspects of Computing, 4(5):413-425, 1992.

[64]
L. Meertens. Calculate polytypically! In H. Kuchen and S.D. Swierstra, editors, Proceedings of the Eigth International Symposium PLILP '96 Programming Languages: Implementations, Logics and Programs, volume 1140 of Lecture Notes in Computer Science, pages 1-16. Springer Verlag, 1996.

[65]
E. Meijer and G. Hutton. Bananas in space: Extending fold and unfold to exponential types. In Conference Record of FPCA '95, SIGPLAN-SIGARCH-WG2.8 Conference on Functional Programming Languages and Computer Architecture, pages 324-333, 1995.

[66]
E. Meijer and J. Jeuring. Merging monads and folds for functional programming. In J. Jeuring and E. Meijer, editors, Advanced Functional Programming, Lecture Notes in Computer Science 925, pages 228-266. Springer-Verlag, 1995.

[67]
E. Meijer, M. Fokkinga, and R. Paterson. Functional programming with bananas, lenses, envelopes, and barbed wire. In J. Hughes, editor, Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture, FPCA '91, pages 124-144, 1991.

[68]
E. Moggi. Computational lambda-calculus and monads. In Proceedings of the Fourth Annual Symposium on Logic in Computer Science (LICS '89), pages 14-23, 1989.

[69]
E. Moggi. Notions of computation and monads. Information and Computation, 93(1):55-92, 1991.

[70]
O. de Moor. Categories, relations and dynamic programming. PhD thesis, Oxford University, 1992. Technical Monograph PRG-98.

[71]
O. de Moor. Categories, relations and dynamic programming. Mathematical Structures in Computer Science, 4:33-69, 1994.

[72]
O. de Moor. A generic program for sequential decision processes. In Programming Languages: Implementations, Logics, and Programs, PLILP '95, volume 982 of Lecture Notes in Computer Science, pages 1-23. Springer-Verlag, 1995.

[73]
J. Palsberg, C. Xiao, and K. Lieberherr. Efficient implementation of adaptive software. TOPLAS, 17(2):264-292, 1995.

[74]
S. L. Peyton Jones. The Implementation of Functional Programming Languages. Prentice Hall, 1987.

[75]
J.A. Robinson. A machine-oriented logic based on the resolution principle. Journal of the ACM, 12:23-41, 1965.

[76]
Niklas Röjemo. Highlights from nhc -- a space-efficient Haskell compiler. In Conference Record of FPCA '95, SIGPLAN-SIGARCH-WG2.8 Conference on Functional Programming Languages and Computer Architecture. ACM Press, 1995.

[77]
Fritz Ruehr. Analytical and Structural Polymorphism Expressed Using Patterns Over Types. PhD thesis, University of Michigan, 1992.

[78]
T. Sheard and L. Fegaras. A fold for all seasons. In Proceedings of the 6th ACM Conference on Functional Programming Languages and Computer Architecture FPCA '93, pages 233-242. ACM Press, June 93.

[79]
T. Sheard and N. Nelson. Type safe abstractions using program generators. Technical Report 95-013, Oregon Graduate Institute of Science and Technology, Portland, OR, USA, 1995.

[80]
Tim Sheard. Automatic generation and use of abstract structure operators. ACM Transactions on Programming Languages and Systems, 13(4):531-557, 1991.

[81]
T. Sheard. Type parametric programming. Unpublished manuscript, Oregon Graduate Institute of Science and Technology, Portland, OR, USA, 1993.

[82]
R.G. Stone. On the choice of grammar and parser for the compact analytical encoding of programs. The Computer Journal, 29(4):307-314, 1986.

[83]
A. Takano and E. Meijer. Shortcut deforestation in calculational form. In Conference Record of FPCA '95, SIGPLAN-SIGARCH-WG2.8 Conference on Functional Programming Languages and Computer Architecture, pages 306-313, 1995.

[84]
Måns Vestin. Genetic algorithms in haskell with polytypic programming. Master's thesis, Göteborg University, Gothenburg, Sweden, 1997. Available from tt http://www.cse.chalmers.se/~johanj/polytypism/genetic.ps.

[85]
P. Wadler. Deforestation: transforming programs to eliminate trees. In Proceedings European Sytmposium on Programming, ESOP88, pages 344-358. Springer-Verlag, 1988. LNCS 300.

[86]
P. Wadler. Theorems for free! In Functional Programming Languages and Computer Architecture, FPCA '89, pages 347-359. ACM Press, 1989.

[87]
T.A. Welch. A technique for high-performance data compression. IEEE Computer, 17(6):8-19, 1984.

[88]
J. Ziv and A. Lempel. A universal algorithm for sequential data compression. IEEE Transactions on Information Theory, 23(3):337-343, 1977.
Last modified: Thu Aug 12 17:11:27 MET DST 1999 by
Patrik Jansson / NOpatrikjSP@AMchalmers.se