Описание тега refined
A refinement type is a type endowed with a predicate which is assumed to hold for any element of the refined type. "Refined" are libraries in Scala and Haskell for refining types.
В теории типов уточняющий тип - это тип, наделенный предикатом, который, как предполагается, выполняется для любого элемента уточненного типа. Связан с зависимыми типами.
В Scala уточненные типы - это такие типы, какtype A { type T = ... }
. Связан с составными типами и структурными типами.
refined - это библиотека Scala для уточнения типов с помощью предикатов уровня типа, которые ограничивают набор значений, описываемых уточненным типом. Он начался как порт усовершенствованной библиотеки Haskell.