[Haskell] Непонятки с типами в GHC
От: nikov США http://www.linkedin.com/in/nikov
Дата: 01.06.09 12:15
Оценка:
f, g :: a -> a
(f, g) = (id, id)


Hugs: OK

GHC:
    Couldn't match expected type `forall a. a -> a'
           against inferred type `a -> a'
    In the expression: id
    In the expression: (id, id)
    In a pattern binding: (f, g) = (id, id)


Что эта ошибка означает?
Re: [Haskell] Непонятки с типами в GHC
От: geniepro http://geniepro.livejournal.com/
Дата: 01.06.09 12:58
Оценка:
Здравствуйте, nikov, Вы писали:

N>Что эта ошибка означает?


Ваще что-то в GHC наворотили в ветке 6.10, аж зла не хватает...
Re[2]: [Haskell] Непонятки с типами в GHC
От: nikov США http://www.linkedin.com/in/nikov
Дата: 03.06.09 14:10
Оценка:
Вот еще интересно, тоже GHC:
Prelude> let [f]=[id]
Prelude> :t f
f :: GHC.Prim.Any -> GHC.Prim.Any


Этот тип, как я понимаю, вообще в Haskell Report не предусмотрен, и является каким-то жестоким хаком GHC.
Re[3]: [Haskell] Непонятки с типами в GHC
От: VoidEx  
Дата: 03.06.09 15:38
Оценка:
Здравствуйте, nikov, Вы писали:

N>Этот тип, как я понимаю, вообще в Haskell Report не предусмотрен, и является каким-то жестоким хаком GHC.


Вах, что они навернули с матчингом
let Just x = Nothing
:t x
x :: GHC.Prim.Any
Re[4]: [Haskell] Непонятки с типами в GHC
От: nikov США http://www.linkedin.com/in/nikov
Дата: 03.06.09 17:16
Оценка:
Здравствуйте, VoidEx, Вы писали:

VE>Вах, что они навернули с матчингом

VE>
VE>let Just x = Nothing
VE>:t x
VE>x :: GHC.Prim.Any
VE>


Ну, это тот же самый эффект + ленивый pattern matching.

Prelude> x `seq` ()
*** Exception: <interactive>:1:4-19: Irrefutable pattern failed for pattern Data.Maybe.Just x
Re[3]: [Haskell] Непонятки с типами в GHC
От: awson  
Дата: 03.06.09 21:10
Оценка:
Здравствуйте, nikov, Вы писали:

N>Вот еще интересно, тоже GHC:

N>
N>Prelude> let [f]=[id]
N>Prelude> :t f
N>f :: GHC.Prim.Any -> GHC.Prim.Any
N>


N>Этот тип, как я понимаю, вообще в Haskell Report не предусмотрен, и является каким-то жестоким хаком GHC.


Вам ведь ответили уже.
Re[4]: [Haskell] Непонятки с типами в GHC
От: nikov США http://www.linkedin.com/in/nikov
Дата: 04.06.09 04:51
Оценка:
Здравствуйте, awson, Вы писали:

N>>Этот тип, как я понимаю, вообще в Haskell Report не предусмотрен, и является каким-то жестоким хаком GHC.


A>Вам ведь ответили уже.


Там ничего про GHC.Prim.Any не было.
Re[5]: [Haskell] Непонятки с типами в GHC
От: awson  
Дата: 04.06.09 07:10
Оценка: +1
Здравствуйте, nikov, Вы писали:

N>Там ничего про GHC.Prim.Any не было.


Зато про -XNoMonoPatBinds было. Если вы запустите ghci с этим ключиком, то получите
f :: a -> a
.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.