Observatorio de I+D+i UPM

Memorias de investigación
Cursos, seminarios y tutoriales:
Evaluation of the lambda-calculus. Generic Evaluators
Año:2009
Áreas de investigación
  • Lenguaje de programación
Datos
Descripción
Different evaluation orders for the untyped lambda-calculus exists (call-by-value, call-by-name, normal order, applicative order...), reflecting the nuances in the evaluation of a system which serves as the foundation of functional programming languages. In this talk, I will introdue a generic evaluator (written in Haskell) which can be instantiated to any evaluator realising a particular evaluation order. For this purpose, I will recall some notions of the untyped lambda-calculus, give an algebraic data type representing lambda-terms, present the big-step semantics of the evaluation orders using natural deduction rules, implement them using CPS following Reynolds' advice and showing alternative solutions in Haskell), show how monads can help to write neater code, present a way to hybridate existing evaluation orders to produce new ones, comment about an absortion theorem regarding hybridation and describe something I call the beta-cube"
Internacional
Si
Nombre congreso
Talk at the Algebra of Programming Group meeting
Entidad organizadora
Oxford University Computing Laboratory
Nacionalidad Entidad
REINO UNIDO
Lugar/Ciudad de impartición
Oxford
Fecha inicio
23/10/2009
Fecha fin
23/10/2009
Esta actividad pertenece a memorias de investigación
Participantes
  • Autor: Alvaro Garcia Perez (UPM)
Grupos de investigación, Departamentos, Centros e Institutos de I+D+i relacionados
  • Creador: Grupo de Investigación: BABEL: Desarrollo de Software Fiable y de Alta Calidad a partir de Tecnología Declarativa
  • Departamento: Lenguajes y Sistemas Informáticos e Ingeniería de Software
S2i 2022 Observatorio de investigación @ UPM con la colaboración del Consejo Social UPM
Cofinanciación del MINECO en el marco del Programa INNCIDE 2011 (OTR-2011-0236)
Cofinanciación del MINECO en el marco del Programa INNPACTO (IPT-020000-2010-22)