Defining and measuring the productivity of programming languages

被引:20
|
作者
Kennedy, K [1 ]
Koelbel, C
Schreiber, R
机构
[1] Rice Univ, Dept Comp Sci, Houston, TX 77251 USA
[2] Hewlett Packard Labs, Palo Alto, CA 94304 USA
来源
INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS | 2004年 / 18卷 / 04期
关键词
productivity measurement; performance metrics; programming support systems; programming language effectiveness;
D O I
10.1177/1094342004048537
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The goal of programming support systems is to make it possible for application developers to produce software faster, without any degradation in software quality. However, it is essential that this goal must not be achieved at the cost of performance: programs written in a high-level language and intended to solve large problems on highly parallel machines must not be egregiously less efficient than the same applications written in a lower-level language. Because this has been a traditional stumbling block for high-level languages, metrics for productivity analysis must explore the trade-off between programming effort and performance. To that end, we propose the use of two dimensionless ratios, relative power and relative efficiency, to measure the productivity of programming interfaces. In this paper we define these concepts, describe their application, and explore various ways for measuring them, including both empirical strategies and expert opinion. Rather than combine these metrics into a single number representing a universal productivity, we propose that they be represented graphically in at least two dimensions so that the trade-offs between abstraction and performance are clearly depicted. However, we also introduce a single problem-dependent parameter that allows us to reason about the relative productivity of two languages for a given problem.
引用
收藏
页码:441 / 448
页数:8
相关论文
共 50 条
  • [41] Programming Languages in Economics
    Department of Economics, University of Texas, Austin, TX 78712, United States
    不详
    Comput Econ, 1-2 (151-181):
  • [42] A comparative study of high-productivity high-performance programming languages for parallel metaheuristics
    Gmys, Jan
    Carneiro, Tiago
    Melab, Nouredine
    Talbi, El-Ghazali
    Tuyttens, Daniel
    SWARM AND EVOLUTIONARY COMPUTATION, 2020, 57 (57)
  • [43] PROGRAMMING-LANGUAGES
    BLUM, BI
    M D COMPUTING, 1984, 1 (05): : 60 - 68
  • [44] PROGRAMMING-LANGUAGES
    THEWLIS, D
    SOFTWARE ENGINEERING JOURNAL, 1986, 1 (04): : 146 - 146
  • [45] Quantum programming languages
    Bettina Heim
    Mathias Soeken
    Sarah Marshall
    Chris Granade
    Martin Roetteler
    Alan Geller
    Matthias Troyer
    Krysta Svore
    Nature Reviews Physics, 2020, 2 : 709 - 722
  • [46] uu for programming languages
    Ferreira, U
    ACM SIGPLAN NOTICES, 2000, 35 (08) : 20 - 30
  • [47] Quantifying programming languages
    Fennema, B
    DR DOBBS JOURNAL, 2004, 29 (11): : 10 - 10
  • [48] PROGRAMMING LANGUAGES FOR AUTOMATA
    KNUTH, DE
    BIGELOW, RH
    JOURNAL OF THE ACM, 1967, 14 (04) : 615 - &
  • [49] PROGRAMMING LANGUAGES (SURVEY)
    TRAKHTENGERTS, EA
    AUTOMATION AND REMOTE CONTROL, 1965, 26 (06) : 1104 - +
  • [50] PROTECTION IN PROGRAMMING LANGUAGES
    MORRIS, JH
    COMMUNICATIONS OF THE ACM, 1973, 16 (01) : 15 - 21