summaryrefslogtreecommitdiff
path: root/testsuite/tests/concurrent/prog001/Utilities.hs
blob: 9e8a39187de441afa10d8369ab8e2d5fa5757d5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
module Utilities (toBinary, fl) where

import Stream
import Data.Ratio

-- Convert from an Integer to its signed-digit representation
toBinary :: Integer -> Stream
toBinary 0 = [0]
toBinary x = toBinary t ++ [x `mod` 2]
	     where t = x `div` 2
	     


fl :: Stream -> Stream
fl (x:xs) = (f x):xs
	  where f 0 = 1
	  	f 1 = 0