Amy de Buitléir
2018-12-02 19:20:33 UTC
I'm reading "Thinking with Types" by Sandy Maguire, and there's a bit of
code on p. 27 that I don't understand and can't get to work. The "Type
3" seems to have the effect of multiplying by 3.
= 54
But it doesn't work for me. When I try this, I get...
$ ghci --version
The Glorious Glasgow Haskell Compilation System, version 8.2.2
$ ghci
λ> :set -XDataKinds
λ> :set -XTypeOperators
λ> :kind! (1 + 17) Type 3
<interactive>:1:2: error:
Not in scope: type constructor or class '+'
<interactive>:1:10: error:
Not in scope: type constructor or class 'Type'
code on p. 27 that I don't understand and can't get to work. The "Type
3" seems to have the effect of multiplying by 3.
:set -XDataKinds
:set -XTypeOperators
:kind! (1 + 17) Type 3
(1 + 17) Type 3 :: Nat:set -XTypeOperators
:kind! (1 + 17) Type 3
= 54
But it doesn't work for me. When I try this, I get...
$ ghci --version
The Glorious Glasgow Haskell Compilation System, version 8.2.2
$ ghci
λ> :set -XDataKinds
λ> :set -XTypeOperators
λ> :kind! (1 + 17) Type 3
<interactive>:1:2: error:
Not in scope: type constructor or class '+'
<interactive>:1:10: error:
Not in scope: type constructor or class 'Type'