BH GSO ISO/IEC TR 25438:2016

ISO/IEC TR 25438:2006
Bahraini Standard   Current Edition · Approved on 08 February 2016

Information technology -- Common Language Infrastructure (CLI) -- Technical Report: Common Generics

BH GSO ISO/IEC TR 25438:2016 Files

English 63 Pages
Current Edition Reference Language

BH GSO ISO/IEC TR 25438:2016 Scope

The CLI standard libraries (ISO/IEC 23271) provide a collection of common types that can be used by multiple languages. With the addition of generics to the CLI, the standard libraries have been extended to include a number of common generic types, in particular, collections. However, at present, these libraries do not include many simple generic types found in a number of different languages. Any language which uses these common types must implement them rather than deferring to the CLI library, thereby reducing language inter-operability. This Technical Report addresses this issue by providing a number of these common types. Generic tuples (product types) are standard in a number of languages: C++ (template Pair), Ada, Haskell, and Standard ML (SML). However, languages differ in the number of pre-defined tuple sizes supported by their standard libraries; e.g. C++ provides just one (Pair) while Haskell provides eight (sizes 2 to 9) and SML allows any size of tuple. This Technical Report provides nine (sizes 2 to 10). Generic programming encourages “higher order” programming where generic functions (methods) take function (delegate) type arguments that have generic types. Examples include Ada’s with and generic constraints, and function arguments in Haskell and SML. In the CLI, function values are provided in the form of delegates, so this proposal defines standard generic delegate types for functions (which return a value) and procedures (which do not). Another two types that occur in a number of languages are an optional type, which either contains a value of some other type or an indication that such a value is not present; and an either type, which holds a value of one of two possible types and an indication of which one is present. This proposal provides both of these.

Best Sellers From Information Sector

GSO ISO/TR 18492:2017
ISO/TR 18492:2005 
Gulf Standard
Long-term preservation of electronic document-based information
GSO ISO/TS 23635:2024
ISO/TS 23635:2022 
Gulf Standard
Blockchain and distributed ledger technologies — Guidelines for governance
BH GSO ISO/IEC 15773:2016
ISO/IEC 15773:1998 
Bahraini Standard
Information technology -- Telecommunications and information exchange between systems -- Broadband Private Integrated Services Network -- Inter-exchange signalling protocol -- Transit counter additional network feature
GSO ISO/IEC 15773:2013
ISO/IEC 15773:1998 
Gulf Standard
Information technology -- Telecommunications and information exchange between systems -- Broadband Private Integrated Services Network -- Inter-exchange signalling protocol -- Transit counter additional network feature

Recently Published from Information Sector

GSO ISO 19168-1:2026
ISO 19168-1:2025 
Gulf Standard
Geographic information — Geospatial API for features — Part 1: Core
GSO ISO/IEC TS 19770-10:2026
ISO/IEC TS 19770-10:2025 
Gulf Standard
Information technology — IT asset management — Part 10: Guidance for implementing ITAM
GSO ISO/IEC 23773-1:2026
ISO/IEC 23773-1:2024 
Gulf Standard
Information technology — User interfaces for automatic simultaneous interpretation systems — Part 1: General
GSO ISO/IEC TS 33062:2026
ISO/IEC TS 33062:2025 
Gulf Standard
Information technology — Process assessment — Process assessment model for quantitative processes to support higher levels of process capability in ISO/IEC 33020