title: Batch processing and functional programming
body: <p>As a Java developer, I'm used to use Spring Batch for batch processing, generally using a streaming library to export large XML files with StAX for exemple.</p>
  
  <p>I'm now developping a Scala application, and wonder if there's any framework, tool or guideline to achieve batch processing.</p>
  
  <p>My Scala application uses the Cake Pattern and I'm not sure how I could integrate this with SpringBatch. Also, I'd like to follow the guidelines described in <code>Functional programming in Scala</code> and try to keep functional purity, using stuff like the IO monad...</p>
  
  <p>I know this is kind of an open question, but I never read anything about this...</p>
  
  <p>Has anyone already achieved functional batch processing here? How was it working? Am I supposed to have a main that creates a batch processing operation in an IO monad and run it? Is there any tool or guideline to help, monitor or handle restartability, like we use Spring Batch in Java.
  Do you use Spring Batch in Scala?
  How do you handle the integration part, for exemple waiting for a JMS/AMQP message to start the treatment that produces an XML?</p>
  
  <p>Any feedback on the subjet is welcome </p>