Hi,<br><br>I'm working on project to port the Ruby Rack framework to Racket scheme. If you're not familiar with Rack, it creates a layer to manage the http response/requests, and a level of abstraction to build a chained list of middle ware clients - each calling the next in chain. <br>
<br>Switching from from Ruby's OOP paradigm to Scheme's more functional paradigm, a problem has presented itself that I would like some advice on.<br><br>In the Rack middleware in the chain, each piece of the middleware receives a hash which encapsulates the response/requests, and the middleware mutates this hash depending on the functionality it adds.<br>
<br>I could port this hash exchange in my Racket implementation, but I have an aversion to the side effects inherently in mutating this hash. My question, then, is does anyone have a more functional approach to how I could implement this middleware chain?<br>
<br>Any advice anyone could offer would be greatly appreciated. I'm going to open sourcing the project soon.<br clear="all">--<br>Chad<br><br>