HORIZON HASKELLDocslts/ghc-10.0.xa8896112026-10-18Search names, modules, packages, or :: a typeCtrl K

GHC 10.0.0.20260917 · lts/ghc-10.0.x · a889611 · 2026-10-18

Modulehnix-0.17.0Haskell2010

Nix.Type.Type

The basis of the Nix type system (type-level). Based on the Hindley–Milner type system. Therefore -> from this the type inference follows.

  • 3 types
  • 9 values
  • Packagehnix-0.17.0
  • Exports12
  • LanguageHaskell2010
  • LicenceBSD-3-Clause
  • SourceType.hs
newtypenewtype TVar
#

Hindrey-Milner type interface

Type variable in the Nix type system.

Constructors

Instances6Eq, Ord, Show, FreeTypeVars, Substitutable, MonadReader
  • Eq TVarDefined in hnix-0.17.0 · Nix.Type.Type
  • Ord TVarDefined in hnix-0.17.0 · Nix.Type.Type
  • Show TVarDefined in hnix-0.17.0 · Nix.Type.Type
  • FreeTypeVars TVarDefined in hnix-0.17.0 · Nix.Type.Infer
  • Substitutable TVarDefined in hnix-0.17.0 · Nix.Type.Infer
  • Monad m => MonadReader (Set TVar, Scopes (InferT s m) (Judgment s)) (InferT s m)Defined in hnix-0.17.0 · Nix.Type.Infer
datadata Type
#

The basic type definitions in the Nix type system (type-level code).

Constructors

  • TVar TVar

    Type variable in the Nix type system.

  • TCon Text

    Concrete (non-polymorphic, constant) type in the Nix type system.

  • TSet Variadic (AttrSet Type)

    Heterogeneous map in the Nix type system. True -> variadic.

  • TList [Type]

    Heterogeneous list in the Nix type system.

  • (:~>) Type Typeinfixr 1

    Type arrow (Type -> Type) in the Nix type system.

  • TMany [Type]

    Variant type (term). Since relating to Nix type system, more precicely - dynamic types in dynamicly typed language (which is Nix).

Instances5Eq, Ord, Show, FreeTypeVars, Substitutable
  • Eq TypeDefined in hnix-0.17.0 · Nix.Type.Type
  • Ord TypeDefined in hnix-0.17.0 · Nix.Type.Type
  • Show TypeDefined in hnix-0.17.0 · Nix.Type.Type
  • FreeTypeVars TypeDefined in hnix-0.17.0 · Nix.Type.Infer
  • Substitutable TypeDefined in hnix-0.17.0 · Nix.Type.Infer
datadata Scheme
#

Hindley–Milner type system uses "scheme" term for "polytypes". Types containing forall quantifiers: forall a . a. Note: HM allows only top-level forall quantification, so no RankNTypes in it.

Constructors

  • Forall [TVar] Type

    Forall [TVar] Type: the Nix type system forall vars. type.

Instances5Eq, Ord, Show, FreeTypeVars, Substitutable
  • Eq SchemeDefined in hnix-0.17.0 · Nix.Type.Type
  • Ord SchemeDefined in hnix-0.17.0 · Nix.Type.Type
  • Show SchemeDefined in hnix-0.17.0 · Nix.Type.Type
  • FreeTypeVars SchemeDefined in hnix-0.17.0 · Nix.Type.Infer
  • Substitutable SchemeDefined in hnix-0.17.0 · Nix.Type.Infer
valuetypeNull :: Type
#

Concrete types in the Nix type system.

valuetypeBool :: Type
#

Concrete types in the Nix type system.

valuetypeInt :: Type
#

Concrete types in the Nix type system.

valuetypePath :: Type
#

Concrete types in the Nix type system.