Implementing typed intermediate languages

被引:0
|
作者
Shao, Z [1 ]
League, C [1 ]
Monnier, S [1 ]
机构
[1] Yale Univ, Dept Comp Sci, New Haven, CT 06520 USA
关键词
D O I
10.1145/291251.289460
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Recent advances in compiler technology have demonstrated the benefits of using strongly typed intermediate languages to compile richly typed source languages (e.g., ML). A type-preserving compiler can use types to guide advanced optimizations and to help generate provably secure mobile code. Types, unfortunately, are very hard to represent and manipulate efficiently; a naive implementation can easily add exponential overhead to the compilation and execution of a program. This paper describes our experience with implementing the FLINT typed intermediate language in the SML/NJ production compiler. We observe that a type-preserving compiler will not scale to handle large types unless all of its type-preserving stages preserve the asymptotic time and space usage in representing and manipulating types. We present a series of novel techniques for achieving this property and give empirical evidence of their effectiveness.
引用
收藏
页码:313 / 323
页数:11
相关论文
共 50 条
  • [31] Flow-directed closure conversion for typed languages
    Cejtin, H
    Jagannathan, S
    Weeks, S
    PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2000, 1782 : 56 - 71
  • [32] Database query languages embedded in the typed lambda calculus
    Hillebrand, GG
    Kanellakis, PC
    Mairson, HG
    INFORMATION AND COMPUTATION, 1996, 127 (02) : 117 - 144
  • [33] Support for Programming Embedded Software with Dynamically Typed Languages
    Krapfenbauer, Harald
    Ertl, Dominik
    Kaindl, Hermann
    Falb, Juergen
    2009 FOURTH INTERNATIONAL CONFERENCE ON SYSTEMS (ICONS), 2009, : 163 - 169
  • [34] Incremental algorithms for dispatching in dynamically typed languages.
    Zibin, Y
    Gil, J
    ACM SIGPLAN NOTICES, 2003, 38 (01) : 126 - 138
  • [35] SAFECode: Enforcing alias analysis for weakly typed languages
    Dhurjati, Dinakar
    Kowshik, Sumant
    Adve, Vikram
    ACM SIGPLAN NOTICES, 2006, 41 (06) : 144 - 157
  • [36] DYNAMIC BINDING IN STRONGLY TYPED PROGRAMMING-LANGUAGES
    GANTENBEIN, RE
    JOURNAL OF SYSTEMS AND SOFTWARE, 1991, 14 (01) : 31 - 38
  • [37] Challenges for Security Typed Web Scripting Languages Design
    Hassan, Doaa
    El-Kassas, Sherif
    Ziedan, Ibrahim
    FOURTH INTERNATIONAL SYMPOSIUM ON INFORMATION ASSURANCE AND SECURITY, PROCEEDINGS, 2008, : 227 - 230
  • [38] Fast Type Reconstruction for Dynamically Typed Programming Languages
    Pluquet, Frederic
    Marot, Antoine
    Wuyts, Roel
    ACM SIGPLAN NOTICES, 2009, 44 (12) : 69 - 78
  • [39] Jifclipse: Development Tools for Security-Typed Languages
    Hicks, Boniface
    King, Dave
    McDaniel, Patrick
    PLAS'07: PROCEEDINGS OF THE 2007 ACM SIGPLAN WORKSHOP ON PROGRAMMING LANGUAGES AND ANALYSIS FOR SECURITY, 2007, : 1 - 10
  • [40] Deductive query languages for recursively typed complex objects
    Hull, R
    Su, JW
    JOURNAL OF LOGIC PROGRAMMING, 1998, 35 (03): : 231 - 261