"type erasure" meaning in English

See type erasure in All languages combined, or Wiktionary

Noun

Forms: type erasures [plural]
Head templates: {{en-noun|~}} type erasure (countable and uncountable, plural type erasures)
  1. (software) A compile-time process by which explicit data type annotations are removed from a program, before run-time execution. Tags: countable, uncountable Categories (topical): Software Hyponyms: erasure Coordinate_terms: reification, type inference
    Sense id: en-type_erasure-en-noun-RWWXhyBT Categories (other): English entries with incorrect language header Disambiguation of English entries with incorrect language header: 88 12 Topics: computing, engineering, mathematics, natural-sciences, physical-sciences, sciences, software
  2. (C++ programming) A technique by which a class is made generic without requiring compile-time template arguments. Tags: countable, uncountable Categories (topical): Programming
    Sense id: en-type_erasure-en-noun-eAT76wZY

Inflected forms

Download JSON data for type erasure meaning in English (3.6kB)

{
  "forms": [
    {
      "form": "type erasures",
      "tags": [
        "plural"
      ]
    }
  ],
  "head_templates": [
    {
      "args": {
        "1": "~"
      },
      "expansion": "type erasure (countable and uncountable, plural type erasures)",
      "name": "en-noun"
    }
  ],
  "lang": "English",
  "lang_code": "en",
  "pos": "noun",
  "senses": [
    {
      "categories": [
        {
          "kind": "topical",
          "langcode": "en",
          "name": "Software",
          "orig": "en:Software",
          "parents": [
            "Computing",
            "Media",
            "Technology",
            "Communication",
            "All topics",
            "Fundamental"
          ],
          "source": "w"
        },
        {
          "_dis": "88 12",
          "kind": "other",
          "name": "English entries with incorrect language header",
          "parents": [
            "Entries with incorrect language header",
            "Entry maintenance"
          ],
          "source": "w+disamb"
        }
      ],
      "coordinate_terms": [
        {
          "_dis1": "90 10",
          "word": "reification"
        },
        {
          "_dis1": "90 10",
          "word": "type inference"
        }
      ],
      "examples": [
        {
          "ref": "2009, Dean Wampler, Alex Payne, Programming Scala: Scalability = Functional Programming + Objects, \"O'Reilly Media, Inc.\", page 249",
          "text": "Although .NET does not have type erasure, meaning it supports reified types, the .NET version of Scala currently follows the JVM's erasure model in order to avoid incompatibilities that would require a “forked” implementation.",
          "type": "quotation"
        },
        {
          "ref": "2014, James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, Alex Buckley, The Java Language Specification, Java SE 8 Edition, Addison-Wesley Professional, page 64",
          "text": "Type erasure is a mapping from types (possibly including parameterized types and type variables) to types (that are never parameterized types or type variables).",
          "type": "quotation"
        }
      ],
      "glosses": [
        "A compile-time process by which explicit data type annotations are removed from a program, before run-time execution."
      ],
      "hyponyms": [
        {
          "_dis1": "63 37",
          "word": "erasure"
        }
      ],
      "id": "en-type_erasure-en-noun-RWWXhyBT",
      "links": [
        [
          "software",
          "software"
        ],
        [
          "compile-time",
          "compile-time"
        ],
        [
          "explicit",
          "explicit"
        ],
        [
          "data type",
          "data type"
        ],
        [
          "annotation",
          "annotation"
        ],
        [
          "program",
          "program"
        ],
        [
          "run-time",
          "run-time"
        ],
        [
          "execution",
          "execution"
        ]
      ],
      "raw_glosses": [
        "(software) A compile-time process by which explicit data type annotations are removed from a program, before run-time execution."
      ],
      "tags": [
        "countable",
        "uncountable"
      ],
      "topics": [
        "computing",
        "engineering",
        "mathematics",
        "natural-sciences",
        "physical-sciences",
        "sciences",
        "software"
      ]
    },
    {
      "categories": [
        {
          "kind": "topical",
          "langcode": "en",
          "name": "Programming",
          "orig": "en:Programming",
          "parents": [
            "Computing",
            "Software engineering",
            "Technology",
            "Computer science",
            "Engineering",
            "Software",
            "All topics",
            "Sciences",
            "Applied sciences",
            "Media",
            "Fundamental",
            "Communication"
          ],
          "source": "w"
        }
      ],
      "examples": [
        {
          "ref": "2019, Fedor G. Pikus, Hands-On Design Patterns with C++: Solve common C++ problems with modern design patterns and build robust applications, Packt Publishing Ltd, page 102",
          "text": "Type erasure is often seen as a mysterious, enigmatic programming technique. It is not exclusive to C++ (most tutorials on type erasure use Java for their examples).",
          "type": "quotation"
        }
      ],
      "glosses": [
        "A technique by which a class is made generic without requiring compile-time template arguments."
      ],
      "id": "en-type_erasure-en-noun-eAT76wZY",
      "links": [
        [
          "programming",
          "programming#Noun"
        ],
        [
          "technique",
          "technique"
        ],
        [
          "class",
          "class"
        ],
        [
          "generic",
          "generic"
        ],
        [
          "compile-time",
          "compile-time"
        ],
        [
          "template",
          "template"
        ],
        [
          "argument",
          "argument"
        ]
      ],
      "qualifier": "C++ programming",
      "raw_glosses": [
        "(C++ programming) A technique by which a class is made generic without requiring compile-time template arguments."
      ],
      "tags": [
        "countable",
        "uncountable"
      ]
    }
  ],
  "word": "type erasure"
}
{
  "categories": [
    "English countable nouns",
    "English entries with incorrect language header",
    "English lemmas",
    "English multiword terms",
    "English nouns",
    "English uncountable nouns"
  ],
  "coordinate_terms": [
    {
      "word": "reification"
    },
    {
      "word": "type inference"
    }
  ],
  "forms": [
    {
      "form": "type erasures",
      "tags": [
        "plural"
      ]
    }
  ],
  "head_templates": [
    {
      "args": {
        "1": "~"
      },
      "expansion": "type erasure (countable and uncountable, plural type erasures)",
      "name": "en-noun"
    }
  ],
  "hyponyms": [
    {
      "word": "erasure"
    }
  ],
  "lang": "English",
  "lang_code": "en",
  "pos": "noun",
  "senses": [
    {
      "categories": [
        "English terms with quotations",
        "en:Software"
      ],
      "examples": [
        {
          "ref": "2009, Dean Wampler, Alex Payne, Programming Scala: Scalability = Functional Programming + Objects, \"O'Reilly Media, Inc.\", page 249",
          "text": "Although .NET does not have type erasure, meaning it supports reified types, the .NET version of Scala currently follows the JVM's erasure model in order to avoid incompatibilities that would require a “forked” implementation.",
          "type": "quotation"
        },
        {
          "ref": "2014, James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, Alex Buckley, The Java Language Specification, Java SE 8 Edition, Addison-Wesley Professional, page 64",
          "text": "Type erasure is a mapping from types (possibly including parameterized types and type variables) to types (that are never parameterized types or type variables).",
          "type": "quotation"
        }
      ],
      "glosses": [
        "A compile-time process by which explicit data type annotations are removed from a program, before run-time execution."
      ],
      "links": [
        [
          "software",
          "software"
        ],
        [
          "compile-time",
          "compile-time"
        ],
        [
          "explicit",
          "explicit"
        ],
        [
          "data type",
          "data type"
        ],
        [
          "annotation",
          "annotation"
        ],
        [
          "program",
          "program"
        ],
        [
          "run-time",
          "run-time"
        ],
        [
          "execution",
          "execution"
        ]
      ],
      "raw_glosses": [
        "(software) A compile-time process by which explicit data type annotations are removed from a program, before run-time execution."
      ],
      "tags": [
        "countable",
        "uncountable"
      ],
      "topics": [
        "computing",
        "engineering",
        "mathematics",
        "natural-sciences",
        "physical-sciences",
        "sciences",
        "software"
      ]
    },
    {
      "categories": [
        "English terms with quotations",
        "en:Programming"
      ],
      "examples": [
        {
          "ref": "2019, Fedor G. Pikus, Hands-On Design Patterns with C++: Solve common C++ problems with modern design patterns and build robust applications, Packt Publishing Ltd, page 102",
          "text": "Type erasure is often seen as a mysterious, enigmatic programming technique. It is not exclusive to C++ (most tutorials on type erasure use Java for their examples).",
          "type": "quotation"
        }
      ],
      "glosses": [
        "A technique by which a class is made generic without requiring compile-time template arguments."
      ],
      "links": [
        [
          "programming",
          "programming#Noun"
        ],
        [
          "technique",
          "technique"
        ],
        [
          "class",
          "class"
        ],
        [
          "generic",
          "generic"
        ],
        [
          "compile-time",
          "compile-time"
        ],
        [
          "template",
          "template"
        ],
        [
          "argument",
          "argument"
        ]
      ],
      "qualifier": "C++ programming",
      "raw_glosses": [
        "(C++ programming) A technique by which a class is made generic without requiring compile-time template arguments."
      ],
      "tags": [
        "countable",
        "uncountable"
      ]
    }
  ],
  "word": "type erasure"
}

This page is a part of the kaikki.org machine-readable English dictionary. This dictionary is based on structured data extracted on 2024-05-03 from the enwiktionary dump dated 2024-05-02 using wiktextract (f4fd8c9 and c9440ce). The data shown on this site has been post-processed and various details (e.g., extra categories) removed, some information disambiguated, and additional data merged from other sources. See the raw data download page for the unprocessed wiktextract data.

If you use this data in academic research, please cite Tatu Ylonen: Wiktextract: Wiktionary as Machine-Readable Structured Data, Proceedings of the 13th Conference on Language Resources and Evaluation (LREC), pp. 1317-1325, Marseille, 20-25 June 2022. Linking to the relevant page(s) under https://kaikki.org would also be greatly appreciated.