DocumentCode
2022464
Title
Generalizing parametricity using information-flow
Author
Washburn, Geoffrey ; Weirich, Stephanie
Author_Institution
Dept. of Comput. & Inf. Sci., Pennsylvania Univ., Philadelphia, PA, USA
fYear
2005
fDate
26-29 June 2005
Firstpage
62
Lastpage
71
Abstract
Run-time type analysis allows programmers to easily and concisely define operations based upon type structure, such as serialization, iterators, and structural equality. However, when types can be inspected at run time, nothing is secret. A module writer cannot use type abstraction to hide implementation details from clients: clients can determine the structure of these supposedly "abstract" data types. Furthermore, access control mechanisms do not help isolate the implementation of abstract datatypes from their clients. Buggy or malicious authorized modules may leak type information to unauthorized clients, so module implementors cannot reliably tell which parts of a program rely on their type definitions. Currently, module implementors rely on parametric polymorphism to provide integrity and confidentiality guarantees about their abstract datatypes. However, standard parametricity does not hold for languages with run-time type analysis; this paper shows how to generalize parametricity so that it does. The key is to augment the type system with annotations about information-flow. Implementors can then easily see which parts of a program depend on the chosen implementation by tracking the flow of dynamic type information.
Keywords
abstract data types; data flow analysis; type theory; abstract data types; access control mechanism; information-flow; malicious authorized modules; module implementor; parametric polymorphism; run-time type analysis; type structure; Access control; Cloning; Dynamic programming; Information analysis; Information science; Programming profession; Remuneration; Runtime; System testing; User interfaces;
fLanguage
English
Publisher
ieee
Conference_Titel
Logic in Computer Science, 2005. LICS 2005. Proceedings. 20th Annual IEEE Symposium on
ISSN
1043-6871
Print_ISBN
0-7695-2266-1
Type
conf
DOI
10.1109/LICS.2005.20
Filename
1509210
Link To Document