HM type system
E807599
The HM type system is a classical polymorphic type system used in many functional programming languages, known for its ability to infer the most general types without requiring explicit type annotations.
All labels observed (1)
| Label | Occurrences |
|---|---|
| HM type system canonical | 1 |
How this entity was disambiguated
This entity first appeared as the object of triple T9566707 — resolving that mention is where its identity was fixed. The disambiguator weighed these candidate entities and picked the highlighted one (or “None”, minting a new entity). This is how homonymy is resolved: the same surface form can point to different entities.
Target entity: HM type system Context triple: [Hindley–Milner type system, alsoKnownAs, HM type system]
-
A.
HSM
A Hardware Security Module (HSM) is a dedicated, tamper-resistant device used to securely generate, store, and manage cryptographic keys and perform sensitive cryptographic operations.
-
B.
HMT
HMT is the commonly used abbreviation for HM Treasury, the United Kingdom government department responsible for economic and financial policy.
-
C.
H4T
H4T is a Canadian postal code prefix associated with the Saint-Laurent borough of Montreal, Quebec.
-
D.
HM
HM is the abbreviated designation commonly used for Hungary’s Ministry of Defence.
-
E.
HM
HM is an abbreviation commonly used as a formal title for a reigning queen or king, standing for "Her Majesty" or "His Majesty."
- F. None of above. chosen
- G. Unsure - the case is ambiguous/there is not enough information to decide.
Target entity: HM type system Target entity description: The HM type system is a classical polymorphic type system used in many functional programming languages, known for its ability to infer the most general types without requiring explicit type annotations.
-
A.
HSM
A Hardware Security Module (HSM) is a dedicated, tamper-resistant device used to securely generate, store, and manage cryptographic keys and perform sensitive cryptographic operations.
-
B.
HMT
HMT is the commonly used abbreviation for HM Treasury, the United Kingdom government department responsible for economic and financial policy.
-
C.
H4T
H4T is a Canadian postal code prefix associated with the Saint-Laurent borough of Montreal, Quebec.
-
D.
HM
HM is the abbreviated designation commonly used for Hungary’s Ministry of Defence.
-
E.
HM
HM is an abbreviation commonly used as a formal title for a reigning queen or king, standing for "Her Majesty" or "His Majesty."
- F. None of above. chosen
Statements (49)
| Predicate | Object |
|---|---|
| instanceOf |
polymorphic type system
ⓘ
type system ⓘ |
| alsoKnownAs |
Damas–Milner type system
NERFINISHED
ⓘ
Hindley–Milner type system NERFINISHED ⓘ |
| applicationDomain |
compiler design
ⓘ
functional programming languages ⓘ program verification ⓘ |
| basedOn |
lambda calculus
NERFINISHED
ⓘ
simply typed lambda calculus with polymorphism ⓘ |
| coreConcept |
generalization and instantiation of types
ⓘ
polymorphic let-binding ⓘ type schemes ⓘ |
| ensures | type safety for well-typed programs in its language fragment ⓘ |
| extendedBy | Damas–Milner type system NERFINISHED ⓘ |
| feature |
completeness for its language fragment
ⓘ
let-polymorphism ⓘ parametric polymorphism ⓘ principal type property ⓘ principal types ⓘ rank-1 polymorphism ⓘ soundness ⓘ type inference ⓘ |
| formalizedBy | Luis Damas NERFINISHED ⓘ |
| generalizes | simply typed lambda calculus ⓘ |
| inferenceAlgorithm |
Algorithm W
NERFINISHED
ⓘ
unification-based type inference ⓘ |
| influenced |
type system of Elm
ⓘ
type system of F# ⓘ type system of Haskell ⓘ type system of ML-family languages ⓘ type system of PureScript NERFINISHED ⓘ |
| namedAfter |
J. Roger Hindley
NERFINISHED
ⓘ
Robin Milner NERFINISHED ⓘ |
| property |
decidable type inference
ⓘ
principal type can be computed ⓘ |
| restriction |
no higher-kinded types in the original system
ⓘ
no higher-rank polymorphism beyond rank 1 ⓘ no subtyping in the original system ⓘ no type classes in the original system ⓘ |
| supports |
automatic type inference without annotations
ⓘ
most general unifier based inference ⓘ |
| usedIn |
Elm (core subset)
NERFINISHED
ⓘ
F# (core subset) NERFINISHED ⓘ Haskell (core subset) NERFINISHED ⓘ ML NERFINISHED ⓘ OCaml NERFINISHED ⓘ PureScript (core subset) NERFINISHED ⓘ Standard ML NERFINISHED ⓘ |
| yearFormalized | 1984 ⓘ |
How these facts were elicited
The pipeline generated the facts above by prompting gpt-5.1 with this entity's name + description and the instruction below.
You are a knowledge base construction expert. Given a subject entity and a description of it, return factual statements that you know for the subject as a JSON list of dictionaries(triples), where keys must be "subject", "predicate" and "object". The number of facts may be very high, between 25 to 50 or more, for very popular subjects. For less popular subjects, the number of facts can be very low, like 5 or 10. # Requirements - If you don't know the subject at all, return an empty list. - If the subject is not a named entity, return an empty list. - Include at least one triple where predicate is "instanceOf". - Do not get too wordy. - Separate several objects into multiple triples with one object.
Subject: HM type system Description of subject: The HM type system is a classical polymorphic type system used in many functional programming languages, known for its ability to infer the most general types without requiring explicit type annotations.
Referenced by (1)
Full triples — surface form annotated when it differs from this entity's canonical label.