3 ms·
Thanks for the insight. I didn't realize that ruby's (former?) continuation memory-leaks were the the reason for Seaside being in Smalltalk rather than Ruby. I
by paulgb 16y ago
Thanks for the insight. I didn't realize that ruby's (former?) continuation memory-leaks were the the reason for Seaside being in Smalltalk rather than Ruby.
In this case I wonder whether Smalltalk really is the right tool for the job. Smalltalk isn't a bad language but there aren't a lot of libraries available. I've played around with Seaside a bit and ended up having to rewrite some of the HTTP libraries to do what I needed. Unfortunately I can't think of another language outside of the LISP family that supports continuations well.
- jluxenberg 16y agoUnfortunately I can't think of another language outside of the LISP family that supports continuations well. Javascript has closures, which you can use to implement continuations. See http://marijn.haverbeke.nl/cps/ http://marijn.haverbeke.nl/cps/
- paulgb 16y agoFirst-class functions can be used for continuation-passing style, but to do what Seaside does elegantly you really need first-class continuations. There's an interesting article on how Seaside uses continuations here: http://blog.fitzell.ca/2009/01/seaside-partial-continuations.html http://blog.fitzell.ca/2009/01/seaside-partial-continuations...