[Top][All Lists]

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

RE: [Chicken-users] External representation for continuations

From: Jonah Beckford
Subject: RE: [Chicken-users] External representation for continuations
Date: Mon, 6 Sep 2004 10:41:42 -0400

> From: Joerg F. Wittenberger
> Sent: September 6, 2004 8:14 AM
> On Thu, 2004-09-02 at 01:07, Jonah Beckford wrote:
> > I see at least two main uses of serializing continuations.  
> The first 
> > [1] is to save a session so that you have a) a persistent Scheme 
> > environment, or b) an early LISP-ish way to distribute applications 
> > for those LISP-ish environments that do not have compilers.  The 
> > second [2] is to create a distributed framework or application.
> [...]
> > [1] a) is very cool as it would give you something like a 
> > long-running, persistent CSI interpreter; you definitely have to go 
> > down the function table or external info approach.  I guess 
> this would 
> > be for those who like CHICKEN for its interpreter skills.  I 
> > definitely don't see a practical need for this, but in the 
> same breath 
> > I definitely would want this.  It's the cool factor, but it 
> sounds like a huge amount of work for little gain.
> > 
> > [1] b) is the hardest of all, but thankfully it is not 
> necessary.  It 
> > is hard because the saved continuation must run on arbitrary 
> > platforms.  It is not necessary because CHICKEN has a 
> decent compiler, 
> > which lets you distribute applications in a more portable way.
> You might be interested to hear that is basically a+b.
> Moreover this "a" is in "virtual synchrony" (as the spread 
> people would call it) in a redundant p2p-distributed environment.
> Jonah, you are right, it has been a lot of work.  But you are 
> wrong about the little gain!  The practical need is tamper 
> proof processing. 
> If you want to have a persistant process which has legaly 
> binding effect, let's say a voting machine, than you need to 
> proof that the machine is correct.  The only way I've seen, 
> was to define an abstract virtual machine (in terms of XML 
> documents; but see SXML - that Scheme in a way) and have a 
> proxy network run byzantine agreements for each state change 
> of the process.  There are other uses, e.g. the german 
> supreme court for patent law found in 2002 that a publication 
> on the internet doesn't fullfil the requirements of a 
> publication, since there's no way to proof the timestamp.  
> For that reason the Askemos object identifiers are 
> self-verifying and include author, date and the message.  For 
> publications/deeds all you need is to create a process, which 
> rejects modifications...

Very interesting, and quite a heavy read.  It will take a good bit to digest
that system.  Is CHICKEN not a viable platform for it, or can it only run on
Rscheme?  I can see arbitrary distributed applications running on top of it,
in addition to the document-management theme.  For example, it is very easy
to see a distributed app using XML to store its state, and the human user
interfaces that interact with this (dynamic) distributed app seeing various
projections of that state (using DSSSL or SXPath or Xquery).   Sidenote:
Might not commercial users, who have historically been the only users of
distributed or grid systems (with the major exceptions of Napster and
address@hidden), see a disconnect between the stated goal of securing 
property and the GPL license?  (I can see it go either way; definitely,
Linux does not seem to suffer from the problem of putting proprietory apps
on top of it, but other GPL projects like Guile and readline do; sorry for
the tough question!).


reply via email to

[Prev in Thread] Current Thread [Next in Thread]