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...

Mô tả đầy đủ

Chi tiết về thư mục
Những tác giả chính: Hinze, R, Löh, A
Định dạng: Journal article
Được phát hành: Elsevier 2009
Miêu tả
Tóm tắt: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.