At Thu, 06 Aug 2015 11:56:27 -0400, Adam Chlipala wrote: > Right now, I'm focusing on library stuff, rather than tutorials, such as > GUI > components similar to what I've used on big Javascript projects, and JSON > RPC. > > Can you elaborate on the JSON RPC part? I can't think of anything of that > kind that wasn't > already well-supported by Ur/Web and its extended standard library 5 years > ago.
I don't have any specific affection for JSON RPC or RPC in general, but rather that I have an odd use case. I plan on writing desktop type applications that are highly stateful that use Ur/Web for the UI and transactional portions of the server side (I'm porting a number of Emacs applications that I wrote years ago). A small yet important chunk of that state is long running, and I wanted to keep that part away from transactional portions of the application. I opted to have most of that state live on the server side, which is invoked in a completely separate process on the server. Perhaps this isn't an optimal arrangement, but thus far it seems to work for my requirements, and I was able to make a working proof of concept in a few days. For this purpose, I was able to use the Ur/Web C FFI to call a JSON RPC client written in Haskell, which I use to specify stateful actions to run on the server side process, which in turn writes to the PostgreSQL database. It is only intended to return database related content, at most just pinging back Ur/Web so that it knows to update the display. Sergey recently mentioned to me that he wrote urweb-callback some time ago, which might work for many cases that I describe (at the time I wrote the code, I wasn't aware of it), although I have to investigate it in more detail to see if it is a suitable replacement for what I had in mind (although some of the cases aren't well suited to being batch executables or shell scripts). Speaking of which, is there any reason why it was not incorporated as part of Ur/Web, since applying patches isn't ideal? Regards, Tim _______________________________________________ Ur mailing list [email protected] http://www.impredicative.com/cgi-bin/mailman/listinfo/ur
