Devo essere in grado di convertire numeri generici (istanze di Num
) in Float
. Ho cercato su Hoogle una funzione con la firma Num n => n -> Float
, ma non sono riuscito a trovare nessuna di queste funzioni (anche se potrebbe essere possibile comporla). Ho anche esaminato il Num
typeclass e non sembra che richieda delle istanze per fornire funzioni di conversione che potrebbero aiutarmi.
Perché devo fare questo? Ho creato un typeclass Moveable
che definisce le operazioni per spostare una coordinata e gli consente di lavorare con qualsiasi istanza di Num
, poiché l'unica cosa richiesta per spostare una coordinata è +
, che è definita da Num
. Il mio obiettivo finale era quello di usare questo con Gloss (una libreria grafica), ma sfortunatamente, Gloss usa solo Float
s. Ciò significa che se sto memorizzando le coordinate come Num
, alla fine dovrò convertirle quando tento di visualizzare un oggetto.
Preferisco non rendere il tipo di numero più specifico, quindi funzionerà con Gloss. Qualcuno ha qualche idea che potrebbe aiutare?