TY - GEN
T1 - A pronominal approach to binding and computation
AU - Harper, Robert
AU - Licata, Daniel R.
AU - Zeilberger, Noam
PY - 2009/10/28
Y1 - 2009/10/28
N2 - There has been a great deal of research on programming languages for computing with binding and scope (bound variables, α-equivalence, capture-avoiding substitution). These languages are useful for a variety of tasks, such as implementing domain-specific languages and formalizing the metatheory of programming languages. Functional programming with binding and scope involves two different notions of function: functions-as-data and functions-as-computation. Functions-as-data, used to represent abstract syntax with variable binding, have an intensional, syntactic, character, in the sense that they can be inspected in ways other than function application. For example, many algorithms that process abstract syntax recur under binders, treating variables symbolically. On the other hand, functions-as-computation, the usual functions of functional programming, have an extensional character-a function from A to B is a black box that, when given an A, delivers a B.
AB - There has been a great deal of research on programming languages for computing with binding and scope (bound variables, α-equivalence, capture-avoiding substitution). These languages are useful for a variety of tasks, such as implementing domain-specific languages and formalizing the metatheory of programming languages. Functional programming with binding and scope involves two different notions of function: functions-as-data and functions-as-computation. Functions-as-data, used to represent abstract syntax with variable binding, have an intensional, syntactic, character, in the sense that they can be inspected in ways other than function application. For example, many algorithms that process abstract syntax recur under binders, treating variables symbolically. On the other hand, functions-as-computation, the usual functions of functional programming, have an extensional character-a function from A to B is a black box that, when given an A, delivers a B.
U2 - 10.1007/978-3-642-02273-9_2
DO - 10.1007/978-3-642-02273-9_2
M3 - Conference contribution
AN - SCOPUS:70350327555
SN - 3642022723
SN - 9783642022722
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 3
EP - 4
BT - Typed Lambda Calculi and Applications - 9th International Conference, TLCA 2009, Proceedings
T2 - 9th International Conference on Typed Lambda Calculi and Applications, TLCA 2009
Y2 - 1 July 2009 through 3 July 2009
ER -