Hi I have a function like this :
myfunc :: [Char] -> [Char]
It  is supposed to work pretty much like this :
  1. Take a string
  2. Put some elements of this input string to output string and put others to stack.
  3. Pop elements to that output string too.
  4. Do 2 and 3 recursively until stack is empty.
  5. Print the output string when stack is empty.

I couldn't figure out where to define stack and output string. Can you help me with that? I'm new to Haskell so I can't think in Haskell's logic very well.