DocumentCode :
3113042
Title :
Static Name Control for FreshML
Author :
Pottier, François
Author_Institution :
INRIA, France
fYear :
2007
fDate :
10-14 July 2007
Firstpage :
356
Lastpage :
365
Abstract :
FreshML extends ML with constructs for declaring and manipulating abstract syntax trees that involve names and statically scoped binders. It is impure: name generation is an observable side effect. In practice, this means that FreshML allows writing programs that create fresh names and unintentionally fail to bind them. Following in the steps of early work by Pitts and Gabbay, this paper defines Pure FreshML, a subset of FreshML equipped with a static proof system that guarantees purity. Pure FreshML relies on a rich binding specification language, on user-provided assertions, expressed in a logic that allows reasoning about values and about the names that they contain, and on a conservative, automatic decision procedure for this logic. It is argued that pure FreshML can express non-trivial syntax-manipulating algorithms.
Keywords :
computational linguistics; page description languages; specification languages; Pure FreshML; abstract syntax trees; name generation; specification language; Automatic logic units; Costs; Logic programming; Pattern matching; Specification languages; Writing;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Logic in Computer Science, 2007. LICS 2007. 22nd Annual IEEE Symposium on
Conference_Location :
Wroclaw
ISSN :
1043-6871
Print_ISBN :
0-7695-2908-9
Type :
conf
DOI :
10.1109/LICS.2007.44
Filename :
4276579
Link To Document :
بازگشت