[Cuis] Solitaire updated for 2203

Casey Ransberger casey.obrien.r at gmail.com
Sun Apr 5 00:15:09 CDT 2015


Just jumping in here late Juan, but...

In a Smalltalk environment, continuations may be somewhat expensive because the way we pull it off is keeping our closures on the heap. 

Don't quote me on this, and I can't immediately cite any sources (sorry) but I recall reading that systems that can do tail-call elimination can cut down on the cost significantly.

Folks, I'm just spitting back out something I've read and I can't back it up. I'd like to know if someone can tell me that I'm wrong about this and such. 

Cheers!

--C

> On Mar 30, 2015, at 6:11 AM, Juan Vuletich <juan at jvuletich.org> wrote:
> 
>> On 3/28/2015 11:02 PM, Ken.Dickey wrote:
>> On Sat, 28 Mar 2015 18:14:07 -0700
>> Casey Ransberger<casey.obrien.r at gmail.com>  wrote:
>> 
>>> So did you do the continuation passing thing entirely with block closures?
>> Guilty as charged.
>> 
>>> If so, I have to say I kind of like not having to add a class. But making the code easy to debug has some goodness to it as well.
>> I don't think callcc/currentDo: will be esier to debug.  I'm just starting to play with the trivial port of Continuation from SeaSide.
>> 
>> I suspect it will take me some time to find a style which helps.  Elegance takes much time, not that I have much.
>> 
>>> Anyway, cool:)
>> Glad you think so.
>> 
>> Great to have real closures in Squeak/Cuis/Pharo after many years of context blocks.  Closures are so much more usable!
>> 
>> Basically CPS was just the easiest way to get the control flow explicit so that it could be disentangled from the animation.
>> 
>> I am still trying for "the simplest thing that will work".
>> 
>> It sometimes takes an amazing amount of work to find the right simplicity.
> 
> Indeed. You must first understand all the superfluous stuff well enough to know what to remove and what to keep...
> 
> Now that you have published Continuations for Cuis, I took a look at them... And found at http://www.jquigley.com/files/talks/continuations.pdf :
> 
> "Even hard-core continuation fans don’t use them directly except as means to implement better-behaved abstractions."
> 
> Besides, Continuations require reification of the execution context as a regular object (to be gc'ed later), instead of just a stack. I believe this means that using Continuations to implement control structures to be used for coding could have a significant performance penalty.
> 
> I hope you'll eventually reach a style based on morphic stepping, that is simple enough to code and debug.
> 
> Cheers,
> Juan Vuletich
> 
>> Cheers,
>> -KenD
> 
> 
> _______________________________________________
> Cuis mailing list
> Cuis at jvuletich.org
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org




More information about the Cuis mailing list