"duck typing" meaning in English

See duck typing in All languages combined, or Wiktionary

Noun

Etymology: From the so-called duck test: “if it looks like a duck, swims like a duck, and quacks like a duck, then it probably is a duck.” Head templates: {{en-noun|-}} duck typing (uncountable)
  1. (programming) A style of dynamic typing in which an object's current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class or implementation of a specific interface. Tags: uncountable Categories (topical): Programming Hypernyms: dynamic typing, typing Related terms: typology Translations (Translations): ankkatyypitys (Finnish), duck typing [masculine] (French), Duck-Typing [neuter] (German)

Download JSON data for duck typing meaning in English (2.5kB)

{
  "etymology_text": "From the so-called duck test: “if it looks like a duck, swims like a duck, and quacks like a duck, then it probably is a duck.”",
  "head_templates": [
    {
      "args": {
        "1": "-"
      },
      "expansion": "duck typing (uncountable)",
      "name": "en-noun"
    }
  ],
  "lang": "English",
  "lang_code": "en",
  "pos": "noun",
  "senses": [
    {
      "categories": [
        {
          "kind": "other",
          "name": "English entries with incorrect language header",
          "parents": [
            "Entries with incorrect language header",
            "Entry maintenance"
          ],
          "source": "w"
        },
        {
          "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": "2006, Neal Ford, Scott Davis, No Fluff, Just Stuff Anthology: The 2006 Edition, page 16",
          "text": "Ruby proponents call this duck typing:: if the variable responds to a message that asks it to quack like a duck and it quacks, it must be a duck. This is clearly different from the way that Java (and other strongly typed languages) work, […]",
          "type": "quotation"
        }
      ],
      "glosses": [
        "A style of dynamic typing in which an object's current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class or implementation of a specific interface."
      ],
      "hypernyms": [
        {
          "word": "dynamic typing"
        },
        {
          "word": "typing"
        }
      ],
      "id": "en-duck_typing-en-noun-j0MAOTfS",
      "links": [
        [
          "programming",
          "programming#Noun"
        ],
        [
          "dynamic typing",
          "dynamic typing"
        ],
        [
          "method",
          "method"
        ],
        [
          "properties",
          "property"
        ],
        [
          "semantics",
          "semantics"
        ],
        [
          "inheritance",
          "inheritance"
        ],
        [
          "class",
          "class"
        ],
        [
          "implementation",
          "implementation"
        ],
        [
          "interface",
          "interface"
        ]
      ],
      "raw_glosses": [
        "(programming) A style of dynamic typing in which an object's current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class or implementation of a specific interface."
      ],
      "related": [
        {
          "word": "typology"
        }
      ],
      "tags": [
        "uncountable"
      ],
      "topics": [
        "computing",
        "engineering",
        "mathematics",
        "natural-sciences",
        "physical-sciences",
        "programming",
        "sciences"
      ],
      "translations": [
        {
          "code": "fi",
          "lang": "Finnish",
          "sense": "Translations",
          "word": "ankkatyypitys"
        },
        {
          "code": "fr",
          "lang": "French",
          "sense": "Translations",
          "tags": [
            "masculine"
          ],
          "word": "duck typing"
        },
        {
          "code": "de",
          "lang": "German",
          "sense": "Translations",
          "tags": [
            "neuter"
          ],
          "word": "Duck-Typing"
        }
      ]
    }
  ],
  "word": "duck typing"
}
{
  "etymology_text": "From the so-called duck test: “if it looks like a duck, swims like a duck, and quacks like a duck, then it probably is a duck.”",
  "head_templates": [
    {
      "args": {
        "1": "-"
      },
      "expansion": "duck typing (uncountable)",
      "name": "en-noun"
    }
  ],
  "hypernyms": [
    {
      "word": "dynamic typing"
    },
    {
      "word": "typing"
    }
  ],
  "lang": "English",
  "lang_code": "en",
  "pos": "noun",
  "related": [
    {
      "word": "typology"
    }
  ],
  "senses": [
    {
      "categories": [
        "English entries with incorrect language header",
        "English lemmas",
        "English multiword terms",
        "English nouns",
        "English terms with quotations",
        "English uncountable nouns",
        "Quotation templates to be cleaned",
        "Translation table header lacks gloss",
        "en:Programming"
      ],
      "examples": [
        {
          "ref": "2006, Neal Ford, Scott Davis, No Fluff, Just Stuff Anthology: The 2006 Edition, page 16",
          "text": "Ruby proponents call this duck typing:: if the variable responds to a message that asks it to quack like a duck and it quacks, it must be a duck. This is clearly different from the way that Java (and other strongly typed languages) work, […]",
          "type": "quotation"
        }
      ],
      "glosses": [
        "A style of dynamic typing in which an object's current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class or implementation of a specific interface."
      ],
      "links": [
        [
          "programming",
          "programming#Noun"
        ],
        [
          "dynamic typing",
          "dynamic typing"
        ],
        [
          "method",
          "method"
        ],
        [
          "properties",
          "property"
        ],
        [
          "semantics",
          "semantics"
        ],
        [
          "inheritance",
          "inheritance"
        ],
        [
          "class",
          "class"
        ],
        [
          "implementation",
          "implementation"
        ],
        [
          "interface",
          "interface"
        ]
      ],
      "raw_glosses": [
        "(programming) A style of dynamic typing in which an object's current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class or implementation of a specific interface."
      ],
      "tags": [
        "uncountable"
      ],
      "topics": [
        "computing",
        "engineering",
        "mathematics",
        "natural-sciences",
        "physical-sciences",
        "programming",
        "sciences"
      ]
    }
  ],
  "translations": [
    {
      "code": "fi",
      "lang": "Finnish",
      "sense": "Translations",
      "word": "ankkatyypitys"
    },
    {
      "code": "fr",
      "lang": "French",
      "sense": "Translations",
      "tags": [
        "masculine"
      ],
      "word": "duck typing"
    },
    {
      "code": "de",
      "lang": "German",
      "sense": "Translations",
      "tags": [
        "neuter"
      ],
      "word": "Duck-Typing"
    }
  ],
  "word": "duck typing"
}

This page is a part of the kaikki.org machine-readable English dictionary. This dictionary is based on structured data extracted on 2024-05-01 from the enwiktionary dump dated 2024-04-21 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.