User Tools

Site Tools


dido:public:ra:xapend:xapend.b_stds:tech:ecma:cli_generics_lib

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dido:public:ra:xapend:xapend.b_stds:tech:ecma:cli_generics_lib [2021/07/01 14:08]
murphy
dido:public:ra:xapend:xapend.b_stds:tech:ecma:cli_generics_lib [2021/08/18 10:00] (current)
murphy [Overview]
Line 1: Line 1:
 ===== ECMA: Technical Report TR/89 - Common Language Infrastructure (CLI) - Common Generics ===== ===== ECMA: Technical Report TR/89 - Common Language Infrastructure (CLI) - Common Generics =====
-[[dido:​public:​ra:​xapend:​xapend.b_stds:​tech:​ecma|return to the Ecma Standards ]]+[[dido:​public:​ra:​xapend:​xapend.b_stds:​tech:​ecma:start|return to the Ecma Standards ]]
  
 <​table>​ <​table>​
Line 17: Line 17:
  
 ==== Overview ==== ==== Overview ====
-  : //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 interoperability. This proposal addresses this issue by providing a number of these common types.//+  : //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 ​[[dido:​public:​ra:​xapend:​xapend.a_glossary:​i:​interoperability|interoperability]]. This proposal 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 predefined 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 proposal provides nine (sizes 2 to 10).//   : //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 predefined 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 proposal provides nine (sizes 2 to 10).//
Line 26: Line 26:
  
   : //Finally, in existing generic languages, a need has been found for a filler type to be used when a particular generic parameter is not required for a particular use of the generic type. A standard one-value type is often provided for this purpose, often called ''​Unit''​ or ''​Void''​ . This proposal includes such a type.//   : //Finally, in existing generic languages, a need has been found for a filler type to be used when a particular generic parameter is not required for a particular use of the generic type. A standard one-value type is often provided for this purpose, often called ''​Unit''​ or ''​Void''​ . This proposal includes such a type.//
-  ​+ 
 /​**=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- /​**=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 /* To add a discussion page to this page, comment out the line that says  /* To add a discussion page to this page, comment out the line that says 
dido/public/ra/xapend/xapend.b_stds/tech/ecma/cli_generics_lib.1625162932.txt.gz · Last modified: 2021/07/01 14:08 by murphy