Generic programming with C plus plus concepts and Haskell type classes-a comparison

被引:4
|
作者
Bernardy, Jean-Philippe [1 ,2 ]
Jansson, Patrik [1 ,2 ]
Zalewski, Marcin [3 ]
Schupp, Sibylle [4 ]
机构
[1] Chalmers Univ Technol, Dept Comp Sci & Engn, SE-41296 Gothenburg, Sweden
[2] Univ Gothenburg, SE-41296 Gothenburg, Sweden
[3] Indiana Univ, Open Syst Lab, Bloomington, IN 47405 USA
[4] Hamburg Univ Technol, Inst Software Syst, D-21073 Hamburg, Germany
关键词
D O I
10.1017/S095679681000016X
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Earlier studies have introduced a list of high-level evaluation criteria to assess how well a language supports generic programming. Languages that meet all criteria include Haskell because of its type classes and C++ with the concept feature. We refine these criteria into a taxonomy that captures commonalities and differences between type classes in Haskell and concepts in C++ and discuss which differences are incidental and which ones are due to other language features. The taxonomy allows for an improved understanding of language support for generic programming, and the comparison is useful for the ongoing discussions among language designers and users of both languages.
引用
收藏
页码:271 / 302
页数:32
相关论文
共 50 条
  • [41] Object-Oriented OpenMP Programming with C plus plus and Fortran
    Terboven, Christian
    Mey, Dieter An
    Kapinos, Paul
    Schleiden, Christopher
    Merkulow, Igor
    HIGH PERFORMANCE COMPUTING SYSTEMS AND APPLICATIONS, 2010, 5976 : 366 - 377
  • [42] The Application of KM Pedagogics in C plus plus Programming Language Teaching
    Zhang, Taohong
    Pan, Jingzhe
    Yang, Bingru
    Xie, Yonghong
    2010 INTERNATIONAL CONFERENCE ON EDUCATION AND SPORTS EDUCATION, VOL II, 2010, : 63 - 66
  • [43] Efficient NAS Benchmark Kernels with C plus plus Parallel Programming
    Griebler, Dalvan
    Loff, Junior
    Fernandes, Luiz G.
    Mencagli, Gabriele
    Danelutto, Marco
    2018 26TH EUROMICRO INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, AND NETWORK-BASED PROCESSING (PDP 2018), 2018, : 733 - 740
  • [44] A Modern C plus plus Point of View of Programming in Image Processing
    Roynard, Michael
    Carlinet, Edwin
    Geraud, Thierry
    PROCEEDINGS OF THE 21ST ACM SIGPLAN INTERNATIONAL CONFERENCE ON GENERATIVE PROGRAMMING: CONCEPTS AND EXPERIENCES, GPCE 2022, 2022, : 164 - 171
  • [45] Discussions on References and Returning References in C plus plus Programming Language
    Mu Jingqin
    Li Xiaohui
    Jiang Haiyang
    Zhang Jun
    Du Ruiqing
    PROCEEDINGS OF THE 2014 INTERNATIONAL CONFERENCE ON MECHATRONICS, ELECTRONIC, INDUSTRIAL AND CONTROL ENGINEERING, 2014, 5 : 87 - 91
  • [46] SYCL: Single-source C plus plus accelerator programming
    Reyes, Ruyman
    Lomueller, Victor
    PARALLEL COMPUTING: ON THE ROAD TO EXASCALE, 2016, 27 : 673 - 682
  • [47] A hybrid programming with C plus plus and Fortran for geostatistical modeling in reservoirs
    Liao Yuanhui
    ENERGY AND POWER TECHNOLOGY, PTS 1 AND 2, 2013, 805-806 : 1925 - 1928
  • [48] A programming tool to ease modular programming with C plus
    Garcia Perez-Schofield, J. Baltasar
    Ortin, Francisco
    SISTEMAS E TECNOLOGIAS DE INFORMACAO, VOL I, 2011, : 54 - +
  • [49] Concepts:: Linguistic support for generic programming in C++
    Gregor, Douglas
    Jaervi, Jaakko
    Siek, Jeremy
    Stroustrup, Bjarne
    Dos Reis, Gabriel
    Lumsdaine, Andrew
    ACM SIGPLAN NOTICES, 2006, 41 (10) : 291 - 310
  • [50] SoAx: A generic C plus plus Structure of Arrays for handling particles in HPC codes
    Homann, Holger
    Laenen, Francois
    COMPUTER PHYSICS COMMUNICATIONS, 2018, 224 : 325 - 332