Generic programming in 3D

Support for generic programming consists of three essential ingredients: support for overloaded functions, a run-time type representation, and a generic view on data. Different approaches to datatype-generic programming occupy different points in this design space. In this article, we revisit the &q...

Descripción completa

Detalles Bibliográficos
Autores principales: Hinze, R, Löh, A
Formato: Journal article
Publicado: Elsevier 2009
_version_ 1826267923132448768
author Hinze, R
Löh, A
author_facet Hinze, R
Löh, A
author_sort Hinze, R
collection OXFORD
description Support for generic programming consists of three essential ingredients: support for overloaded functions, a run-time type representation, and a generic view on data. Different approaches to datatype-generic programming occupy different points in this design space. In this article, we revisit the "Scrap your boilerplate" approach and identify its location within the three-dimensional design space. The characteristic features of "Scrap your boilerplate" are its two generic views, the 'spine' view for consuming and transforming data, and the ‘type-spine’ view for producing data. We show how to combine these views with different overloading mechanisms and type representations.
first_indexed 2024-03-06T21:01:42Z
format Journal article
id oxford-uuid:3b18813b-087c-47d9-9e2d-f57b437bd6c6
institution University of Oxford
last_indexed 2024-03-06T21:01:42Z
publishDate 2009
publisher Elsevier
record_format dspace
spelling oxford-uuid:3b18813b-087c-47d9-9e2d-f57b437bd6c62022-03-26T14:05:30ZGeneric programming in 3DJournal articlehttp://purl.org/coar/resource_type/c_dcae04bcuuid:3b18813b-087c-47d9-9e2d-f57b437bd6c6Symplectic Elements at OxfordElsevier2009Hinze, RLöh, ASupport for generic programming consists of three essential ingredients: support for overloaded functions, a run-time type representation, and a generic view on data. Different approaches to datatype-generic programming occupy different points in this design space. In this article, we revisit the "Scrap your boilerplate" approach and identify its location within the three-dimensional design space. The characteristic features of "Scrap your boilerplate" are its two generic views, the 'spine' view for consuming and transforming data, and the ‘type-spine’ view for producing data. We show how to combine these views with different overloading mechanisms and type representations.
spellingShingle Hinze, R
Löh, A
Generic programming in 3D
title Generic programming in 3D
title_full Generic programming in 3D
title_fullStr Generic programming in 3D
title_full_unstemmed Generic programming in 3D
title_short Generic programming in 3D
title_sort generic programming in 3d
work_keys_str_mv AT hinzer genericprogrammingin3d
AT loha genericprogrammingin3d