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 条
  • [21] PROGRAMMING ARDUINO BOARDS WITH THE C/C plus plus INTERPRETER CH
    Turley, Curtis
    Montironi, Maria Alessandra
    Cheng, Harry H.
    INTERNATIONAL DESIGN ENGINEERING TECHNICAL CONFERENCES AND COMPUTERS AND INFORMATION IN ENGINEERING CONFERENCE, 2015, VOL 9, 2016,
  • [22] A C plus plus Generic Parallel Pattern Interface for Stream Processing
    del Rio Astorga, David
    Dolz, Manuel F.
    Miguel Sanchez, Luis
    Garcia Blas, Javier
    Daniel Garcia, J.
    ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, ICA3PP 2016, 2016, 10048 : 74 - 87
  • [23] Discussion On Copy Constructor In C plus plus Programming Language
    Luo Fafen
    Du Ruiqing
    FOURTH INTERNATIONAL CONFERENCE ON MACHINE VISION (ICMV 2011): COMPUTER VISION AND IMAGE ANALYSIS: PATTERN RECOGNITION AND BASIC TECHNOLOGIES, 2012, 8350
  • [24] Using OGRE as a Means of Teaching C plus plus Programming
    Johnson, Bruce
    PROCEEDINGS OF THE 49TH ANNUAL ASSOCIATION FOR COMPUTING MACHINERY SOUTHEAST CONFERENCE (ACMSE '11), 2011, : T2 - T2
  • [25] A C plus plus Programming Model for Heterogeneous System Architecture
    Potter, Ralph
    Bradford, Russell
    Murray, Alastair
    Dolinsky, Uwe
    HIGH PERFORMANCE COMPUTING, ISC HIGH PERFORMANCE 2016 INTERNATIONAL WORKSHOPS, 2016, 9945 : 433 - 450
  • [26] A Modern C plus plus Parallel Task Programming Library
    Lin, Chun-Xun
    Huang, Tsung-Wei
    Guo, Guannan
    Wong, Martin D. F.
    PROCEEDINGS OF THE 27TH ACM INTERNATIONAL CONFERENCE ON MULTIMEDIA (MM'19), 2019, : 2284 - 2287
  • [27] Research and Practice on Teaching for C plus plus Programming Language
    Liu, Hai-ming
    Zhang, Mei
    Liu, Wei-dong
    2016 2ND INTERNATIONAL CONFERENCE ON SOCIAL, EDUCATION AND MANAGEMENT ENGINEERING (SEME 2016), 2016, : 122 - 126
  • [28] A C plus plus framework for geometric semantic genetic programming
    Castelli, Mauro
    Silva, Sara
    Vanneschi, Leonardo
    GENETIC PROGRAMMING AND EVOLVABLE MACHINES, 2015, 16 (01) : 73 - 81
  • [29] The C plus plus programming language in cheminformatics and computational chemistry
    Rassokhin, Dmitrii
    JOURNAL OF CHEMINFORMATICS, 2020, 12 (01)
  • [30] A Sequenced Curriculum for Teaching Introductory C plus plus Programming
    McMillan, Michael
    SIGCSE 2020: PROCEEDINGS OF THE 51ST ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, 2020, : 1304 - 1304