myLayout = ( Tall 1 (1/2) (3/100) ||| Mirror Tall ||| simpleTabbed )
Notice that Tall takes 3 parameters, but you're then using it again without any parameters under control of Mirror. The error message is complaining about the missing parameters; this tends to look a bit odd in Haskell, because sometimes that's an entirely legitimate thing to do --- just, not here.
Usually we abstract that out to look something like
myLayout = tall ||| Mirror tall ||| simpleTabbed
where
tall = Tall 1 (1/2) (3/100)
but if you prefer to do it inline then you'll want
myLayout = Tall 1 (1/2) (3/100) ||| Mirror (Tall 1 (1/2) (3/100)) ||| simpleTabbed
--