Type-safe run-time polytypic programming

被引:3
|
作者
Weirich, Stephanie [1 ]
机构
[1] Univ Penn, Dept Comp & Informat Sci, Philadelphia, PA 19104 USA
关键词
D O I
10.1017/S0956796806005879
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Polytypic programming is a way of defining type-indexed operations, such as map, fold and zip, based on type information. Run-time polytypic programming allows that type information to be dynamically computed - this support is essential in modern programming languages that support separate compilation, first-class type abstraction, or polymorphic recursion. However, in previous work we defined run-time polytypic programming with a type-passing semantics. Although it is natural to define polytypic programs as operating over first-class types, such a semantics suffers from a number of drawbacks. This paper describes how to recast that work in a type-erasure semantics, where terms represent type information in a safe manner. The resulting language is simple and easy to implement - we present a prototype implementation of the necessary machinery as a small Haskell library.
引用
收藏
页码:681 / 710
页数:30
相关论文
共 50 条
  • [1] Type-safe delegation for run-time component adaptation
    Kniesel, G
    [J]. ECOOP'99 - OBJECT-ORIENTED PROGRAMMING, 1999, 1628 : 351 - 366
  • [2] Mnemonics: Type-safe Bytecode Generation at Run Time
    Rudolph, Johannes
    Thiemann, Peter
    [J]. PEPM '10: PROCEEDINGS OF THE 2010 ACM SIGPLAN WORKSHOP ON PARTIAL EVALUATION AND PROGRAM MANIPULATION, 2010, : 15 - 24
  • [3] Type-safe update programming
    Erwig, M
    Ren, D
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, 2003, 2618 : 269 - 283
  • [4] Type-safe Quantum Programming in Idris
    Dandy, Liliane-Joy
    Jeandel, Emmanuel
    Zamdzhiev, Vladimir
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, ESOP 2023, 2023, 13990 : 507 - 534
  • [5] Type-safe distributed programming with ML5
    Murphy, Tom
    Crary, Karl
    Harper, Robert
    [J]. TRUSTWORTHY GLOBAL COMPUTING, 2008, 4912 : 108 - +
  • [6] Run-time support for distributed sharing in safe languages
    Hu, YC
    Yu, WM
    Cox, A
    Wallach, D
    Zwaenepoel, W
    [J]. ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2003, 21 (01): : 1 - 35
  • [7] Safe kernel extensions without run-time checking
    Necula, GC
    Lee, P
    [J]. PROCEEDINGS OF THE SECOND SYMPOSIUM ON OPERATING SYSTEMS DESIGN AND IMPLEMENTATION (OSDI '96), 1996, : 229 - 243
  • [8] A Complier and Run-time system for Network Programming Languages
    Monsanto, Christopher
    Foster, Nate
    Harrison, Rob
    Walker, David
    [J]. ACM SIGPLAN NOTICES, 2012, 47 (01) : 217 - 230
  • [9] A Compiler and Run-time System for Network Programming Languages
    Monsanto, Christopher
    Foster, Nate
    Harrison, Rob
    Walker, David
    [J]. POPL 12: PROCEEDINGS OF THE 39TH ANNUAL ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES, 2012, : 217 - 230
  • [10] Run-Time Semantics of a Language for Programming Social Processes
    Serrano, Juan M.
    Saugar, Sergio
    [J]. COMPUTATIONAL LOGIC IN MULTI-AGENT SYSTEMS, 2009, 5405 : 37 - 56