Warum in GHCI, warum die Art der Funktion Pfeil `: sort (->)` Fragemarken `(->) :: ?? ->? -> *`? [Duplikat

StackOverflow https://stackoverflow.com/questions/5359707

  •  27-10-2019
  •  | 
  •  

Frage

Mögliches Duplikat:
Haskell seltsame Arten: Art von (->) ist? ->? -> *

In GHCI (Version 7.0.2) enthält das Ergebnis, wenn ich nach der Art des Funktionstyps frage, Fragenzeichen:

Prelude> :kind (->)
(->) :: ?? -> ? -> *

Warum beinhaltet die Art Fragen anstelle von nur Sternchen * -> * -> *? Was bedeuten die Fragezeichen? Warum verwenden andere Typen nur Sternchen?

Prelude> :kind (,)
(,) :: * -> * -> *
War es hilfreich?

Lösung

Das ? und ?? Arten beziehen sich auf GHC -Erweiterungen, insbesondere auf nicht mehr als nicht beachtete Typen. http://hackage.haskell.org/trac/ghc/wiki/intermediatetypes hat ein Diagramm, das Beziehungen zwischen den erweiterten Arten zeigt ? (alle möglichen Typen), # (Typen ohne Box),, ?? (Boxed- oder normale Typen ohne Box - "am wenigsten Obergrenze von # und *"), (#) (Unboxed -Tupel, die nur in einer kleinen Anzahl von Kontexten verwendet werden können). (Die Standardart * bezieht sich auf normale Boxtypen.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top