Hacker News new | past | comments | ask | show | jobs | submit login

REST is a broad term, which covers different ideas. One of these is that the statelessness of HTTP is an inherent aspect of web applications. Instead of trying to build abstractions, to hide this fact, (some) REST-proponents, will say that the only proper way to write web applications, is to avoid server side state, and instead rely on client side state. Continuations are in direct conflict with this principle.

Continuations captures state in a way very similar to closures. I think this is why the lisp/scheme crowd are so found of them. In contrast, the client-side-state-way appears procedural. I strongly believe that client side state is the _only_ worthwhile solution; We need to accept that fact and get rid of continuations.




I'm part of the Lisp/Scheme crowd. I don't use continuations in my web development, but I think you're stating things too strongly to say they should never be used. I think it's easy to see the convenience of them, and rapid prototyping is important. When scalability becomes a big issue people will come up with a good way of serializing continuations.


You're right that most existing web application frameworks (targeted at lisp or otherwise), use some sort of server side state mechanism. But that is not to say, that a rapid prototyping framework couldn't be made, which used solely client side state.

Anyway, I am of course putting it a bit on the extreme end here, but in principle I stand by it. Continuations are but an elegant hack; I might prefer it over other similar hacks, but I'd rather not have to use it at all.


> I strongly believe that client side state is the _only_ worthwhile solution; We need to accept that fact and get rid of continuations.

It's not clear to me if you're joking, but in case you're not: there are some situations, especially in closed-system webapps, where it's useful to use a non-transparent scheme for resources. You don't want people to jump into a middle page of a survey or other workflow, and going out of your way to have the middle pages accessible via a RESTful scheme seems pointless and potentially misleading. Continuations or similar methods for papering over the "page" abstraction can be helpful, here. Even if you don't use something like that, you'll end up doing the same thing manually.

I agree, though, that those who use this style typically overuse it and apply it to situations (like, er, discussion forums... ;) where it isn't really appropriate.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: