Balanced brackets: Difference between revisions

Content added Content deleted
(→‎{{header|Haskell}}: added automaton solution)
m (→‎{{header|Haskell}}: added sample output)
Line 3,169: Line 3,169:
This generates an infinite stream of correct balanced brackets expressions:
This generates an infinite stream of correct balanced brackets expressions:


<lang haskell>
<lang haskell>brackets = filter isMatching
$ [1.. ] >>= (`replicateM` "[]{}") </lang>
brackets = filter isMatching
<pre>λ> take 10 brackets
$ [1.. ] >>= (`replicateM` "[]{}")
["[]","{}","[[]]","[][]","[]{}","[{}]","{[]}","{{}}","{}[]","{}{}"]</pre>
</lang>



In case the index of unmatched opening bracket is need to be found, following solution is suitable.
In case the index of unmatched opening bracket is need to be found, following solution is suitable.