\begin{thebibliography}{BTCGS91}

\bibitem[AC94]{Abadi94}
Mart{\'{\i}}n Abadi and Luca Cardelli.
\newblock A theory of primitive objects.
\newblock Draft paper available from gatekeeper.pa.dec.com, February 1994.

\bibitem[ACCL91]{Abadi91}
Mart\'{\i}n Abadi, Luca Cardelli, Pierre-Louis Curien, and Jean-Jacques
  L\'{e}vy.
\newblock Explicit substitutions.
\newblock {\em Journal of Functional Programming}, 1(4):375--416, October 1991.

\bibitem[Bac91]{Bachmair91}
Leo Bachmair.
\newblock {\em Canonical Equational Proofs}.
\newblock Birk{\"a}user, Boston, 1991.

\bibitem[BTCGS91]{Breazutannen91}
Val Breazu-Tannen, Thierry Coquand, Carl Gunter, and Andre Scedrov.
\newblock Inheritance as implicit coercion.
\newblock {\em Information and Computation}, 93:172--221, 1991.

\bibitem[CC77]{Cousot77}
Patrick Cousot and Radhia Cousot.
\newblock Abstract interpretation: A unified lattice model for static analysis
  of programs by construction or approximation of fixpoints.
\newblock In {\em Proceedings of the Fourth Annual {ACM} Symposium on
  Principles of Programming Languages}, pages 238--252. ACM, 1977.

\bibitem[CCM87]{Cousineau87}
Guy Cousineau, Pierre-Louis Curien, and Michel Mauny.
\newblock The categorical abstract machine.
\newblock {\em Science of Computer Programming}, 8, May 1987.

\bibitem[CDCV81]{Coppo81}
Mario Coppo, Maria Dezani-Ciancaglini, and B.~Venneri.
\newblock Functional character of solvable terms.
\newblock {\em Zeitschrift f{\"u}r mathematische Logic und Grundlagen der
  Mathematik}, 27:45--58, 1981.

\bibitem[Fil94]{Filinski94}
Andrzej Filinski.
\newblock Representing monads.
\newblock In H.-J. Boehm, editor, {\em Conference Record of the 21st Symposium
  on Principles of Programming Languages}, pages 446--457, Portland, Oregon,
  January 1994. ACM Press.

\bibitem[Hen93]{Henglein93}
Fritz Henglein.
\newblock Type inference with polymorphic recursion.
\newblock {\em ACM Transactions on Programming Languages and Systems},
  15(2):253--289, April 1993.

\bibitem[HM94]{Hankin94}
Chris Hankin and Daniel~Le M\'etayer.
\newblock Deriving algorithms from type inference systems: Application to
  strictness analysis.
\newblock In {\em Proceedings of the Twenty-First Annual ACM Symposium on
  Principles of Programming Languages, Portland}, pages 202--212. ACM, January
  1994.

\bibitem[Lau93]{Launchbury93}
John Launchbury.
\newblock A natural semantics for lazy evaluation.
\newblock In S.~Graham, editor, {\em Conference Record of the {20th} Annual
  Symposium on Principles of Programming Languages}, pages 144--154,
  Charleston, South Carolina, January 1993. ACM Press.

\bibitem[MNPS91]{Miller91b}
Dale Miller, Gopalan Nadathur, Frank Pfenning, and Andre Scedrov.
\newblock Uniform proofs as a foundation for logic programming.
\newblock {\em Annals of Pure and Applied Logic}, 51:125--157, 1991.

\bibitem[MTH90]{Milner90}
Robin Milner, Mads Tofte, and Robert Harper.
\newblock {\em The Definition of Standard {ML}}.
\newblock MIT Press, Cambridge, Massachusetts, 1990.

\bibitem[NN92]{Nielson92}
Flemming Nielson and Hanne~Riis Nielson.
\newblock {\em Two-Level Functional Languages}.
\newblock Cambridge University Press, 1992.

\bibitem[Ode94]{Odersky94}
Martin Odersky.
\newblock A functional theory of local names.
\newblock In H.-J. Boehm, editor, {\em Conference Record of the 21st Symposium
  on Principles of Programming Languages}, pages 48--59, Portland, Oregon,
  January 1994. ACM Press.

\bibitem[PA93]{Plotkin93}
Gordon Plotkin and Mart{\'{\i}}n Abadi.
\newblock A logic for parametric polymorphism.
\newblock In M.~Bezem and J.F. Groote, editors, {\em Proceedings of the
  International Conference on Typed Lambda Calculi and Applications,
  {TLCA'93}}, pages 361--375, Utrecht, The Netherlands, March 1993.
  Springer-Verlag LNCS 664.

\bibitem[Rey72]{Reynolds72}
John~C. Reynolds.
\newblock Definitional interpreters for higher-order programming languages.
\newblock In {\em Proceedings of the 25th ACM National Conference}, pages
  717--740, New York, 1972. ACM.

\bibitem[Rey88]{Reynolds88b}
John~C. Reynolds.
\newblock Preliminary design of the programming language {Forsythe}.
\newblock Technical Report CMU-CS-88-159, Carnegie Mellon University,
  Pittsburgh, Pennsylvania, June 1988.

\bibitem[Rey91]{Reynolds91}
John~C. Reynolds.
\newblock The coherence of languages with intersection types.
\newblock In T.~Ito and A.~R. Meyer, editors, {\em International Conference on
  Theoretical Aspects of Computer Software}, pages 675--700, Sendai, Japan,
  September 1991. Springer-Verlag LNCS 526.

\bibitem[Sny91]{Snyder91}
Wayne Snyder.
\newblock {\em A Proof Theory for General Unification}.
\newblock Birkh{\"a}user, 1991.

\end{thebibliography}
