I've had very good success with Google's protocol buffers standards in Racket:

https://planet.racket-lang.org/display.ss?package=protobuf.plt&owner=murphy&changerep=2
http://voidstarzero.ca/post/137911090363/getting-started-with-protocol-buffers-in-racket
https://developers.google.com/protocol-buffers/

They play nicely with Racket's "structs, not hashes" philosophy.



On Thu, Apr 6, 2017 at 5:19 PM, Neil Van Dyke <n...@neilvandyke.org> wrote:
> I don't know about Microsoft UWP specifically, but, FWIW, there is a long
> tradition, in various platforms, of partitioning into two or more host OS
> processes, and doing some kind of interprocess communication (IPC) between
> them.  The IPC can be over domain sockets, shared memory, stdio/TTY, TCP,
> etc., with protocol layer over that.  Among other reasons, this process
> separation avoids C-like memory problems in other code creating
> nigh-impossible-to-debug failures in your modern language runtime.
>
> For Racket process separation in general (I don't know about whatever MS is
> trying this time), if there were no pre-existing good channel, usually I
> would start with a simple s-expressions or JSON message protocol, over TCP.
> That's pretty easy to implement rapidly on both ends, relatively easy to
> test&debug, can be solid, can usually give good performance, and leaves you
> the option of partitioning across hosts.  (HTTP as IPC is sometimes another
> viable option, but less-desirable in many regards.)  Then you have to
> coordinate process lifetimes.  Then you can look at any performance
> bottlenecks, and, if the IPC happens to be a problem, you can probably
> evolve the code pretty easily.  (I don't mean to overstate the possibility
> of a performance issue.  If you implement a clean sexp/JSON-over-TCP
> protocol, I suspect you'd likely be more efficient, from the start, than how
> a conventional Web programmer would think to do it.)
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to