2012-09-24 11 views
6

Cercando di compilare schede memocombinators 0.4.3, ottenuto il seguente errore:I bit non derivano da Num?

Data/MemoCombinators.hs:119:10: 
    Could not deduce (Num a) arising from a use of `IntTrie.apply' 
    from the context (Ord a, Bits a) 

penso Bits usato per essere derivato da Num. Forse era cattivo e la dipendenza è stata rimossa, ma ora il pacchetto è rotto. C'è qualche soluzione nota per questo? Forse sto usando una brutta versione di qualcosa?

Ho aggiunto Num a alla firma della funzione nella mia copia del pacchetto per ora, ma questo non può essere corretto a lungo termine.

Sto usando GHC 7.6.1, la base è 4.6.0.0.

+1

A lungo termine, si dovrebbe sollevare un problema con il manutentore del pacchetto, quindi il problema viene risolto per tutti. –

risposta

9

È mentioned in the changelog for GHC 7.6.1 (base 4.6.0.0).

The Bits class does not have a Num superclass anymore.

You can make code that works with both Haskell98/Haskell2010 and GHC by:

  • Whenever you make a Bits instance of a type, also make Num instance, and
  • Whenever you give a function, instance or class a Bits t constraint, also give it a Num t constraint.

Vedi GHC#5593 e la mailing list discussion per ulteriori informazioni su questa decisione.

+1

Grazie, è quello che ho fatto (n. 2) solo per essere in grado di installare il pacchetto. –

Problemi correlati