Dan Mead on 16 Nov 2011 20:41:44 -0800


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: is lisp the answer? /linkbait


I think the problem you guys are talking about is addressed by this project, also run by a major java and Haskell language contributor (phillip wadler)


http://groups.inf.ed.ac.uk/links/


basically, you can write a web app in a single program that is compiled into the nessicary _javascript_,html,backend, etc etc

it's very much a proof of concept, but hopefully stuff like this becomes the norm eventually.

it certainly wouldn't remove the factory-ish type of work completely, but maybe a unified language like that for Web apps would at least make it less time consuming

Dan


On Wed, Nov 16, 2011 at 1:38 PM, Mat Schaffer <mat@schaffer.me> wrote:
On Wed, Nov 16, 2011 at 10:14 AM, Dustin Getz <dustin.getz@gmail.com> wrote:
systems integration is hard because the underlying systems aren't designed to be composable, or at least in big systems it never turns out that way. i wonder if systems never turn out composable because they are implemented using patterns that aren't composable (by people who don't undertand referential transparency, or even know what it is). and if all systems were implemented, from the smallest, most tactical level, all the way up, using composable patterns -- referentially transparent patterns -- the natural outcome is composable software components. which would mean "finding the right glue" isn't hard anymore.

I'll admit that I don't know what referential transparency means. And apologies if this is OT, but here are my thoughts on glue and integration.

As far as I've seen the lack of composable systems is because the means of composing then isn't consistent. Single-broker message queues, øMQ, protobufs, messagepack, json, http, html. Nothing fits every situation or something does maybe it's not approachable enough for people to choose it. If everything were in a single Lisp runtime you'd still have this problem (afaik) when you start scaling out horizontally. Even Erlang's IPC breaks down when the number of machines grows too large.

I find the "glue" tends to largely center on making disparate systems talk to each other. Until we can find a good common transport and marshaling system that covers most cases, the glue will likely continue.

-Mat