I had a similar thought, although my first idea was simply a RESTful string like "function?Param=Val&Parm2=Val2".
I also thought it would be nifty to have a `define/contract' variant that would return a wrapper that takes the query params string, unpacks it into the procedure args, raises an exception for any problems (I'm sorry but string->number can't make "A" into a number), applies them to the contracted proc, and returns the value to the caller. And you could use this wrapper in an actual HTTP server, or with some other transport. Then I thought it would be nifty to have a number of `define/contract' variants, each of which marshals to things such as: - Query param strings as just mentioned - json-rpc - xml-rpc - current-command-line-arguments - The latest COM/.NET flavor of hoohah - Some sort of "reverse FFI" whereby Racket could be used to create libs as well as use them. Admittedly grand unified theory moods can be sirens. But if someone could help with the harder (for me) macro and contract-parsing guts, providing a framework into which that someone like me could plug in various specific marshals, then someone like me would try to create, test and share some. On Wed, Jun 22, 2011 at 12:46 PM, John Clements <cleme...@brinckerhoff.org> wrote: > > On Jun 22, 2011, at 9:21 AM, Grant Rettke wrote: > >> 2011/6/22 Thomas Chust <ch...@web.de>: >>> * Use interprocess or network communication to connect a Racket >>> program and a .NET program. >> >> Anybody used something like this before? Sounds like an interesting >> enough problem that there ought to be an existing solution already >> that doesn't involve SOAP or REST or JSON. > > Tangentially related; am I right in thinking that > > a) there's no json-rpc library in PLaneT, and > b) such a lib would be pretty easy to implement, and > c) such a lib would probably be the most sensible way to communicate in a > language-neutral way between machines? > > John > > > _________________________________________________ > For list-related administrative tasks: > http://lists.racket-lang.org/listinfo/users > _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users