Size: a a a

2016 March 18

ES

Evgeny Starikov in Haskell
{- GADTs#-}

data Expr a where
   I :: Num a => a -> Expr a
источник

ES

Evgeny Starikov in Haskell
может как-нибудь так?
источник

Н

Нурлан in Haskell
А что за  функцияI?
источник

ES

Evgeny Starikov in Haskell
просто неудачно выбранное название конструктора %)
источник

DS

Denis Shevchenko in Haskell
Нурлан
кто-нить знает, в data Mytype a = ... можно ли указать какому классу может принадлежать a ?
data Num a => My a = My a deriving (Show)
источник

DS

Denis Shevchenko in Haskell
в этом случае подсунуть 123 получится, а строку "123" - нет
источник

Н

Нурлан in Haskell
компилятор говорит недопустимый контекст типа данных
источник

ES

Evgeny Starikov in Haskell
это, вроде, устаревший метод
источник

ES

Evgeny Starikov in Haskell
The designers of Haskell 98 do now think, that it was a bad decision to allow constraints on constructors. GHC as of version 7.2 disallows them by default (turn back on with -XDatatypeContexts).
источник

ES

Evgeny Starikov in Haskell
data MyType a where
   MyType :: Num a => a -> MyType a
источник

DS

Denis Shevchenko in Haskell
Я проверил на ghc 7.10.2
источник

ES

Evgeny Starikov in Haskell
это рекомендованный метод решения проблемы, как я понимаю
источник

ES

Evgeny Starikov in Haskell
через GADT
источник

DS

Denis Shevchenko in Haskell
да, через GADT лучше
источник

DS

Denis Shevchenko in Haskell
я привёл первое, что на ум пришло... :-)
источник

Н

Нурлан in Haskell
я что-то совсем не понимаю, о чем речь?
источник

DS

Denis Shevchenko in Haskell
источник

ES

Evgeny Starikov in Haskell
источник

Н

Нурлан in Haskell
ок, сейчас разберусь
источник

Н

Нурлан in Haskell
но может это  из-за того, что я в конструкторе  :&  использую
источник