mirror of
https://github.com/dhil/phd-dissertation
synced 2026-03-13 02:58:26 +00:00
References for OCaml, Scheme, and proper tail recursion.
This commit is contained in:
35
thesis.bib
35
thesis.bib
@@ -769,6 +769,28 @@
|
||||
address = {Cambridge, MA, USA},
|
||||
}
|
||||
|
||||
# OCaml
|
||||
@book{LeroyDFGRV20,
|
||||
author = {Xavier Leroy and Damien Doligez and Alain Frisch and Jacques Garrigue and Didier Rémy and Jérôme Vouillon},
|
||||
title = {The {OCaml} System Release 4.11: Documentation and user's manual},
|
||||
year = 2020,
|
||||
month = aug,
|
||||
publisher = {Institut National de Recherche en Informatique et en Automatique}
|
||||
}
|
||||
|
||||
# Scheme R6RS
|
||||
@book{SperberDFSFM10,
|
||||
author = {Michael Sperber and
|
||||
R. Kent Dybvig and
|
||||
Matthew Flatt and
|
||||
Anton van Straaten and
|
||||
Robert Bruce Findler and
|
||||
Jacob Matthews},
|
||||
title = {Revised6 Report on the Algorithmic Language Scheme},
|
||||
publisher = {Cambridge University Press},
|
||||
year = {2010}
|
||||
}
|
||||
|
||||
# Timeless classics
|
||||
@article{Plotkin04a,
|
||||
author = {Gordon D. Plotkin},
|
||||
@@ -813,7 +835,7 @@
|
||||
year = {1994}
|
||||
}
|
||||
|
||||
% Control operators
|
||||
# Control operators
|
||||
@article{Landin65,
|
||||
author = {Peter J. Landin},
|
||||
title = {Correspondence between {ALGOL} 60 and Church's Lambda-notation: part
|
||||
@@ -846,7 +868,7 @@
|
||||
year = {1998}
|
||||
}
|
||||
|
||||
% System F
|
||||
# System F
|
||||
@phdthesis{Girard72,
|
||||
author = {J. Y. Girard},
|
||||
school = {Universit{\'e} Paris 7},
|
||||
@@ -875,3 +897,12 @@
|
||||
year = {1989}
|
||||
}
|
||||
|
||||
# Tail calls
|
||||
@inproceedings{Clinger98,
|
||||
author = {William D. Clinger},
|
||||
title = {Proper Tail Recursion and Space Efficiency},
|
||||
booktitle = {{PLDI}},
|
||||
pages = {174--185},
|
||||
publisher = {{ACM}},
|
||||
year = {1998}
|
||||
}
|
||||
@@ -881,6 +881,14 @@ bindings, pair deconstructing, and case splitting. In each of those
|
||||
cases we subtract the relevant binder(s) from the set of free
|
||||
variables.
|
||||
|
||||
\paragraph{Proper tail-recursion}
|
||||
|
||||
Many industrial-strength functional programming languages such as
|
||||
SML~\cite{MilnerTHM97}, OCaml~\cite{LeroyDFGRV20},
|
||||
Scheme~\cite{SperberDFSFM10} rely heavily on being properly
|
||||
tail-recursive\dots
|
||||
\dhil{TODO define properly tail-recursive}
|
||||
|
||||
\subsection{Typing rules}
|
||||
\label{sec:base-language-type-rules}
|
||||
%
|
||||
|
||||
Reference in New Issue
Block a user