1 2 3 4 5 6 7
import Data.Bits bits :: Bits t => t -> [Bool] bits 0 = [] bits x = testBit x 0 : bits (shiftR x 1) main = print (bits (12::Int), bits (24::Int), bits (maxBound::Int))
1
([False,False,True,True],[False,False,False,True,True],[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True])