Turning dynamic typing into static typing by program specialization in a compiler front-end for octave

被引:9
|
作者
Olmos, K [1 ]
Visser, E [1 ]
机构
[1] Univ Utrecht, Inst Comp & Informat Sci, NL-3508 TB Utrecht, Netherlands
来源
THIRD IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION - PROCEEDINGS | 2003年
关键词
D O I
10.1109/SCAM.2003.1238040
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Array processing languages such as APL, Matlab and Octave rely on dynamic typechecking by the interpreter rather than static typechecking and are designed for user convenience with a syntax close to mathematical notation. Functions and operators are highly overloaded The price to be paid for this flexibility is computational performance, since the run-time system is responsible for type checking, array shape determination, function call dispatching, and handling possible run-time errors. In order to produce effecient code, an Octave compiler should address those issues at compile-time as much as possible. In particular static type and shape inferencing can improve the quality of the generated code. In this paper we discuss how overloading in dynamically typed Octave programs can be resolved by program specialization. We discuss the typing issues in compilation of Octave programs and give an overview of the implementation of the specializer in the transformation language Stratego.
引用
收藏
页码:141 / 150
页数:10
相关论文
共 50 条
  • [1] Extension of Alvis Compiler front-end
    Wypych, Michal
    Szpyrka, Marcin
    Matyasik, Piotr
    INTERNATIONAL CONFERENCE OF COMPUTATIONAL METHODS IN SCIENCES AND ENGINEERING 2015 (ICCMSE 2015), 2015, 1702
  • [2] Towards a compiler front-end for Ada
    Goos, Gerhard
    Winterstein, Georg
    ACM SIGPLAN Notices, 1980, 15 (11): : 36 - 46
  • [3] Formal verification of a C compiler front-end
    Blazy, Sandrine
    Dargaye, Zaynah
    Leroy, Xavier
    FM 2006: FORMAL METHODS, PROCEEDINGS, 2006, 4085 : 460 - 475
  • [4] OntoSlug: a dynamic visual front-end program for ontologies
    Telefont, Martin
    Liu, Yunkai
    BIOINFORMATION, 2008, 2 (10) : 438 - 440
  • [5] Static and dynamic typing for the termination of mobile processes
    Demangeon, Romain
    Hirschkoff, Daniel
    Sangiorgi, Davide
    FIFTH IFIP INTERNATIONAL CONFERENCE ON THEORETICAL COMPUTER SCIENCE - TCS 2008, 2008, 273 : 413 - +
  • [6] Front-end design of task compiler for reconfigurable multimedia processor
    Yin, Chong-Yong
    Yin, Shou-Yi
    Liu, Lei-Bo
    Yang, Chao
    Zhu, Min
    Wei, Shao-Jun
    Beijing Youdian Daxue Xuebao/Journal of Beijing University of Posts and Telecommunications, 2011, 34 (03): : 108 - 112
  • [7] Research on Code Detection and DFG Generation in CRCLA Compiler Front-End
    Yang, Chenguang
    Li, Wei
    Du, Yiran
    Computer Engineering and Applications, 2023, 59 (23) : 63 - 72
  • [8] Zero-a blend of static typing and dynamic metaprogramming
    Greiner, Saso
    Brest, Janez
    Zumer, Viljem
    COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2009, 35 (03) : 241 - 251
  • [9] IEC 61131-3 Front-End for the LLVM Compiler Family
    Catalao, Tiago
    de Sousa, Mario
    2020 25TH IEEE INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 2020, : 1187 - 1190
  • [10] SC front-end with wide dynamic range
    Meijer, GCM
    Iordanov, VP
    ELECTRONICS LETTERS, 2001, 37 (23) : 1377 - 1378