Non riesco a trovare risorse valide che funzionino su come rendere i miei tipi di dati unboxed, da utilizzare in un vettore unbox. Come posso creare il tipo di datiCome posso creare un'istanza di unbox di un ADT?
data Color = Yellow | Red | Green | Blue | Empty deriving (Show, Eq)
essere un esempio di Unbox?
Edit: dopo aver spulciato un po 'di più, sembra che obbligando i parametri in alcune funzioni a essere rigidi, posso convincere GHC a cancellarli automaticamente. Se applicabile nel mio caso? Come faccio a sapere quali paramateri rendere rigorosi?
Hai guardato [questa risposta] (http://stackoverflow.com/a/10866718)? – Fixnum
Sì, GHCi mi ha detto che 'Vector',' MVector' e 'U.Unbox' non sono classi derivabili. Per non dire che non capisco cosa sta succedendo lì, specialmente con la cosa 'GeneralizedNewtypeDeriving', e mi piacerebbe capire le cose prima di usarle. – Drew
Non che risponda alla tua domanda, ma hai provato a lavorare con i vettori in scatola qui? Gestiranno il tuo tipo di dati senza problemi. – jtobin