Thue-Morse: Difference between revisions

m
→‎{{header|Haskell}}: Removed a redundant Monad import in favour of Applicative (now available by default)
m (→‎{{header|Haskell}}: (Tidying the non-finite sequence version))
m (→‎{{header|Haskell}}: Removed a redundant Monad import in favour of Applicative (now available by default))
Line 714:
=={{header|Haskell}}==
 
Computing progressively longer prefixes of the sequence,:
 
<lang haskell>importthueMorsePxs Control.Monad:: [[Int]]
thueMorsePxs = iterate ((++) <*> map (1 -)) [0]
 
{-
thueMorsePxs = ap (++) (map (1-)) `iterate` [0]
thueMorsePxs = Control.Monad.ap (++) (map (1-)) `iterate` [0]
{-
= iterate ((++) <*> map (1-)) [0]
= iterate (\ xs -> (++) xs (map (1-) xs)) [0]
= iterate (\ xs -> xs ++ map (1-) xs) [0]
-}
-}</lang>
main :: IO ()
 
<langmain haskell>~>= print $ thueMorsePxs !! 5</lang>
'''Output:'''
{{Out}}
<lang haskell>~> thueMorsePxs !! 5
<pre>[0,1,1,0,1,0,0,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1]</langpre>
 
The infinite sequence itself:
9,659

edits