chicken-users
[Top][All Lists]
Advanced

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

Re: [Askemos-general] RE: [Chicken-users] External representation for co


From: Joerg F. Wittenberger
Subject: Re: [Askemos-general] RE: [Chicken-users] External representation for continuations
Date: Mon, 06 Sep 2004 18:07:47 +0200

On Mon, 2004-09-06 at 16:41, Jonah Beckford wrote:
> > 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 www.askemos.org 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?

Chicken is definately a viable platform for it.  From the
Askemos-ressource page there should be a link to an incomplete port to
chicken.

Askemos is actually kind of an axiomatic system, but the paper about the
details is yet to be written.  For business reasons I can't detail
anything before the publication thereof.

However there are several issues with Askemos/BALL regarding chicken:

a) The most critical is developer time.  I'm concentrating on that front
currently.  Askemos startet out as a one man show but now, there's a
first, partialy government-funded project based on it starting soon,
which is supposed to expand base of experts and sooner or later softeyes
will hire some Schemers.

b) I've been using some RScheme things and some C code for
optimisation.  Chicken and rscheme are quite simillar in that respect,
but eventually the FFI is different.  Regexps too...

c) I see more important issues than porting to a different Scheme
implementation.  (However take the mere fact that I started the first
port, that I understand the general importance of it.)

>   I can see arbitrary distributed applications running on top of it,

Me too.  ;-)  That's why I start to base my business on 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).

Well, uhm, how should I put it?  That's how we do our applications.

>    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 
> proprietory
> 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!).

We'll see.  I simply don't know yet.  Eventually I want to
common-criteria-certify Askemos.  I hope few people will then continue
to ask.

regards

/Jörg





reply via email to

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