= Refinement type
{wiki=Refinement_type}
Refinement types are a type system feature that extends traditional type systems by allowing types to express more specific properties or constraints about values. They enable programmers to specify not just what type a value is, but also certain predicates that must hold true for values of that type. In a typical type system, a type like \`Integer\` simply describes integers without any additional constraints. Refinement types allow for the expression of constraints like "positive integers" or "even integers".
Back to article page