Andrew, After leaving your last functional missive alone I'll bite :) My take is most functional programmers try to confine side effects (in this case IO) to specific areas of their app. Descriptions like early or late make me nervous and my take is using large scale design techniques like packages and namespaces is only part of the result. I would in some cases go so far as to split the app to leave the side effects in their own app. Obviously the pp as to be hairy enough to warrant that kind of action though. At te very least forming a strong API boundary is essential because picking out side effect riddled code is a royal pain with tests and a nightmare without. Also I don't think monads are essential to understanding this, more code cleanliness principles.
In terms of Ruby I'd use gems and modules to confine the side effects. There's nothing wrong with putting that in one place so that when you scale up you can work out how to deal with the side effects. Hope that helps. Robert On 24 August 2011 16:48, Andrew Grimm <[email protected]> wrote: > Do functional programmers try to manage IO side effects by trying to > do as much of the input as early as possible, and leave as much of the > output as late as possible, or is there more to it than that? > > If you were trying to program in the functional programming paradigm > in Ruby, would you have to understand monads first, or is that more of > a requirement for specific functional programming languages such as > Haskell? > > Andrew > > -- > You received this message because you are subscribed to the Google Groups > "Ruby or Rails Oceania" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/rails-oceania?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Ruby or Rails Oceania" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rails-oceania?hl=en.
