Re: [racket] Architecture advice for new project

2012-05-16 Thread Chad Albers
I'd like to thank everyone for their advice. I'm going to definitely explore the Racket's webserver and step back and look at existing Rack middleware implementations to determine if I can use a different construct besides hash-manipulations. -- Chad On Tue, May 15, 2012 at 8:23 PM, Robby Findl

Re: [racket] Architecture advice for new project

2012-05-15 Thread Robby Findler
I guess you probably need to step back and understand how things tend to mutate this hash and look for another construct that more accurately captures the interesting use cases for mutating the hash. That is, hash mutation is a kind of do-anything assembly language and until you have a good handle

Re: [racket] Architecture advice for new project

2012-05-15 Thread Danny Yoo
On Tuesday, May 15, 2012, Chad Albers wrote: > Definitely. Using Racket's hashes, I can duplicate the same functionality. > > But this hash mechanism bothers me, because I see a informal > convention developing in Rack middleware, where the middleware starts > injecting it's own state into the ha

Re: [racket] Architecture advice for new project

2012-05-15 Thread Raoul Duke
On Tue, May 15, 2012 at 11:00 AM, Chad Albers wrote: > injecting it's own state into the hash, with hacky namespaces on the > keys to prevent key collisions.  I would like to avoid that. off the top of my head, it seems like if there is sharing, yet you want to avoid collisions, then you either h

Re: [racket] Architecture advice for new project

2012-05-15 Thread Chad Albers
Definitely. Using Racket's hashes, I can duplicate the same functionality. But this hash mechanism bothers me, because I see a informal convention developing in Rack middleware, where the middleware starts injecting it's own state into the hash, with hacky namespaces on the keys to prevent key co

Re: [racket] Architecture advice for new project

2012-05-15 Thread Danny Yoo
> 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. Could each middleware layer return the updated hash value? Racket has functional hash tabl

[racket] Architecture advice for new project

2012-05-15 Thread Chad Albers
Hi, 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. Switching from from