déposer
version française rss feed
HAL : inria-00434283, version 1

Fiche détaillée  Récupérer au format
2009 Workshop on Normalization by Evaluation, Los Angeles : United States (2009)
Efficient normalization by evaluation
Mathieu Boespflug 1, 2
(15/08/2009)

Dependently typed theorem provers allow arbitrary terms in types. It is convenient to identify large classes of terms during type checking, hence many such systems provision some form of conversion rule. A standard algorithm for testing the convertibility of two types consists in normalizing them, then testing for syntactic equality of the normal forms. Normalization by evaluation is a standard technique enabling the use of existing compilers and runtimes for functional languages to implement normalizers, without peaking under the hood, for a fast yet cheap system in terms of implementation effort. Our focus is on performance of untyped normalization by evaluation. We demonstrate that with the aid of a standard optimization for higher order programs (namely uncurrying) and the reuse of pattern matching facilities of the evaluator for datatypes, we may obtain a normalizer that evaluates non-functional values about as fast as the underlying evaluator, but as an added benefit can also fully normalize functional values — or to put it another way, partially evaluates functions efficiently.
1 :  Laboratoire d'informatique de l'école polytechnique (LIX)
CNRS : UMR7161 – Polytechnique - X
2 :  TypiCal (INRIA Saclay - Ile de France)
INRIA – CNRS : UMR – Polytechnique - X
Informatique/Langage de programmation

Informatique/Logique en informatique

Informatique/Performance et fiabilité
Liste des fichiers attachés à ce document : 
PDF
NBE09-Boespflug-fastnbe.pdf(266.6 KB)

tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...
tous les articles de la base du CCSd...