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 条
  • [1] A Comparison of C plus plus Concepts and Haskell Type Classes
    Bernardy, Jean-Philippe
    Jansson, Patrik
    Zalewski, Marcin
    Schupp, Sibylle
    Priesnitz, Andreas
    WGP'08: PROCEEDINGS OF THE 2008 ACM SIGPLAN WORKSHOP ON GENERIC PROGRAMMING, 2008, : 37 - 47
  • [2] Programming with C plus plus concepts
    Jaervi, Jaakko
    Marcus, Mat
    Smith, Jacob N.
    SCIENCE OF COMPUTER PROGRAMMING, 2010, 75 (07) : 596 - 614
  • [3] Axioms as generic rewrite rules in C plus plus with concepts
    Tang, Xiaolong
    Jaervi, Jaakko
    SCIENCE OF COMPUTER PROGRAMMING, 2015, 97 : 320 - 330
  • [4] C plus plus and generic programming for rapid development of Monte Carlo simulations
    Brown, G
    Lee, HK
    Schulthess, TC
    COMPUTER SIMULATION STUDIES IN CONDENSED-MATTER PHYSICS XVI, 2006, 103 : 157 - +
  • [5] Generic Libraries in C plus plus with Concepts from High-Level Domain Descriptions in Haskell A Domain-Specific Library for Computational Vulnerability Assessment
    Lincke, Daniel
    Jansson, Patrik
    Zalewski, Marcin
    Ionescu, Cezar
    DOMAIN-SPECIFIC LANGUAGES, PROCEEDINGS, 2009, 5658 : 236 - +
  • [6] Creating numerically efficient FDTD simulations using generic C plus plus programming
    Valuev, I.
    Deinega, A.
    Knizhnik, A.
    Potapkin, B.
    COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2007, PT 3, PROCEEDINGS, 2007, 4707 : 213 - +
  • [7] Testing C plus plus Generic Libraries
    Sutton, Andrew
    Zalewski, Marcin
    2012 28TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM), 2012, : 36 - 45
  • [8] A Comparison of Generic Template Support: Ada, C plus plus , C#, and Java']Java™
    Brosgol, Benjamin M.
    RELIABLE SOFTWARE TECHNOLOGIES - ADA-EUROPE 2010, 2010, 6106 : 222 - 237
  • [9] Using Logic Programming to Recover C plus plus Classes and Methods from Compiled Executables
    Schwartz, Edward J.
    Cohen, Cory F.
    Duggan, Michael
    Gennari, Jeffrey
    Havrilla, Jeffrey S.
    Hines, Charles
    PROCEEDINGS OF THE 2018 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY (CCS'18), 2018, : 426 - 441
  • [10] Coverage of CS1 Programming Concepts in C plus plus and Java']Java Textbooks
    McMaster, Kirby
    Rague, Brian
    Sambasivam, Samuel
    Wolthuis, Stuart
    2016 IEEE FRONTIERS IN EDUCATION CONFERENCE (FIE), 2016,