How to Evaluate Blame for Gradual Types

被引:5
|
作者
Lazarek, Lukas [1 ]
Greenman, Ben [1 ]
Felleisen, Matthias [1 ]
Dimoulas, Christos [1 ]
机构
[1] Northwestern Univ, PLT, Evanston, IL 60208 USA
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2021年 / 5卷
关键词
gradual typing; blame;
D O I
10.1145/3473573
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Programming language theoreticians develop blame assignment systems and prove blame theorems for gradually typed programming languages. Practical implementations of gradual typing almost completely ignore the idea of blame assignment. This contrast raises the question whether blame provides any value to the working programmer and poses the challenge of how to evaluate the effectiveness of blame assignment strategies. This paper contributes (1) the first evaluation method for blame assignment strategies and (2) the results from applying it to three different semantics for gradual typing. These results cast doubt on the theoretical effectiveness of blame in gradual typing. In most scenarios, strategies with imprecise blame assignment are as helpful to a rationally acting programmer as strategies with provably correct blame.
引用
收藏
页数:29
相关论文
共 50 条
  • [1] How to Evaluate Blame for Gradual Types, Part 2
    Lazarek, Lukas
    Greenman, Ben
    Felleisen, Matthias
    Dimoulas, Christos
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (ICFP): : 159 - 186
  • [2] How to evaluate the performance of gradual type systems
    Greenman, Ben
    Takikawa, Asumu
    New, Max S.
    Feltey, Daniel
    Findler, Robert Bruce
    Vitek, Jan
    Felleisen, Matthias
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2019, 29
  • [3] Static Blame for gradual typing
    Su, Chenghao
    Chen, Lin
    Yanhui, Li
    Zhou, Yuming
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2024, 34
  • [4] Big Types in Little Runtime Open-World Soundness and Collaborative Blame for Gradual Type Systems
    Vitousek, Michael M.
    Swords, Cameron
    Siek, Jeremy G.
    ACM SIGPLAN NOTICES, 2017, 52 (01) : 762 - 774
  • [5] Gradual Security Types and Gradual Guarantees
    Bichhawat, Abhishek
    McCall, McKenna
    Jia, Limin
    2021 IEEE 34TH COMPUTER SECURITY FOUNDATIONS SYMPOSIUM (CSF 2021), 2021, : 49 - 64
  • [6] TYPES OF COLLECTIVITIES AND BLAME
    FRENCH, PA
    PERSONALIST, 1975, 56 (02): : 160 - 169
  • [7] Migrating Gradual Types
    Campora, John Peter
    Chen, Sheng
    Erwig, Martin
    Walkingshaw, Eric
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2018, 2 (POPL):
  • [8] Gradual Ownership Types
    Sergey, Ilya
    Clarke, Dave
    PROGRAMMING LANGUAGES AND SYSTEMS, 2012, 7211 : 579 - 599
  • [9] Gradual ownership types
    IBBT-DistriNet, Department of Computer Science, Katholieke Universiteit Leuven, Belgium
    Lect. Notes Comput. Sci., 1600, (579-599):
  • [10] Gradual session types
    Igarashi, Atsushi
    Thiemann, Peter
    Tsuda, Yuya
    Vasconcelos, Vasco T.
    Wadler, Philip
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2019, 29