Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] Re: About CONTINUATIONS

From: robbo1mark:aol at: 24-Feb-2002 15:27

Joel / Chaz, I'm not sure about this one as I don't have first hand knowledge, but did Joe Marshall put Continuations in REBOL 1.x or were they part of Carl Sassenraths original design for the REBOL language? Even if Joe Marshall was lead implementor I'm certain that nothing would go in without Carl's approval. If they were deemed an important and interesting enough feature to be in the first release of the product then presumably this was the view taken by the lead implementor AND language designer. Whilst continuations are a tricky concept to come to terms with initially and joe average user won't bother to learn about them it doesn't mean that they are not a desirable language feature. In my opinion they ARE definitely on a list of desirable language features. Do I wish they were still in REBOL? probably YES. Continuations make loads of intersting and advanced things possible without detracting anything away from the user / programmer who doesn't use or understand them. Scheme and Common Lisp both have them and so does Stackless Python and ML. There is loads of interesting Comp Sci literature on continuations and they are a well understood and used feature for advanced programming in the above languages, especially in the field of modelling concurrency and parallel programming. They interest me that's why I wish REBOL still had them. Having read Joe Marshall's cons regarding continuations I don't think it was necessary to throw the baby out with the bath water in the change over to REBOL 2.x when we lost continuations and tail call optimisation. From what I can see they didn't fully explore the continuation model to it's full extent, Joe Marshall states as such. Iam sure there is a LOT they could have learned from advanced Scheme & ML implementations which STILL have these features. These languages are not SO fundamentally different from REBOL which is at it's core a prefix functional language. This is all theoretical but raises some interesting issues regarding language design and implementation. I was a bit disturbed that Joe Marshall stated that with his implementation "nobody else in the company could extend the interpreter.." SURELY NOT? What about Carl Sassenrath? Also "You need a degree in Comp. Sci from a few select places to really understand all this.." IS THAT A PROBLEM? Is there anything wrong with that? I don't think these points are valid, the literature is readily available that discusses and has SOLVED a lot of these thorny problems. SCHEME and ML have efficient interpreters AND optimising compilers and fast incremental compilers using various implementation techniques which explore and attempt to / SOLVE the problems Joe Marshall highlighted in relation to REBOL. The solutions *ARE* there if you take the time to learn and understand them. However I'm sure Carl & RT had other goals for REBOL 2.x like "speed" which they considered to be of higher precedence and importance. It's a pity when a language loses capabilities or features as it closes of some doors. Can a Language Designer / Implementor foresee all the possible uses or interesting applications of their creation? Of course not! Maybe the Comp. Sci people at those "select places" could provide some insights into solving those problems and we get back the languages feature that were lost! That's my wish for REBOL 3.x cheers, Mark Dickson In a message dated Fri, 22 Feb 2002 8:03:52 AM Eastern Standard Time, Joel Neely <[joel--neely--fedex--com]> writes: