In F# I can use the yield/yield! syntax in order to concat a mixture of single elements and arrays into a single collection, e.g.
let result = seq {
yield 1
yield! [2;3;4;5]
yield! [6;7]
yield 8
}
printfn "%A" result
// Prints: seq [1; 2; 3; 4; ...]
I'm wondering if there's a similar way of doing this in Haskell.