Askemos 2000 (Archive)
home · features · download · archive

AskemosDVM

The Askemos virtual machine follows the semantics of pi-calculus. This design style has been widely found beneficial for instance in Hardware (especially FPGA) Design and the Erlang programming system.

A place of the Askemos DVM executes process step when it receives a message. A reply function

reply = function(place, message)

is computed for each step, where

reply
an aggregate denoting the answer the process step yields to the incoming message. The programmer used to traditional operating system terms might think of the reply element content as a list all those system calls which the function needs to complete and which might modify values.
function
Step response, a two-ari function defined by the ActionDocument.
message
A read only accessor to the aggregate denoting the current input.
place
A r/o (read type request) or r/w (write type request) accessor to the aggregate denoting "this" place. Often called "me".

The input area (message and place) and the output area (reply) each are described as an xml document, and the function is defined as an XSLT transformation.

These process step are executed by several physical machines in parallel and a byzantine agreement over the value of the reply is required for the step to be actually performed.


  1. A place in this virtual machine can be understood as the container of an arrow (See John Hughes, Generalising Monads to Arrows) or a continuation which is evaluated in steps.

  2. Read more at LtU: mondas for beginners and a collection of monad links.
  3. Looks like PiDuce implements quite a simillar processing paradigm.




border
last modification: Tue, 17 Oct 2006 16:17:46 +0200
authors: jfw, hgm,
document identifier: A849640f672ed0df0958abc0712110f3c
delivered to public at Sun, 21 Sep 2014 11:54:13 +0200
short comments display (2)


rss

pdf :: context view

search



24 Apr 2004 DefineInsecureMode
12 Dez 2010 FreeBSD
07 Dez 2010 BALLFeatures
05 Dez 2010 ByzantineAgreement
04 Dez 2010 SQLITE
03 Dez 2010 SRS
12 Okt 2010 WebDAV
12 Sep 2010 SQL
16 Jun 2010 BALL
16 Jun 2010 CouchDB
16 Jun 2010 AskemosServer
07 Mai 2010 SystemRequirements
30 Mar 2010 ProjectsOnThePlate
30 Mar 2010 AskemosResources
30 Mar 2010 RSchemeInstall
30 Mar 2010 INSTALL
30 Mar 2010 ChickenScheme
debug-access.scm
27 Nov 2009 subscriber
development
12 Jul 2009 test
01 Jul 2009 TrustCenter
27 Dez 2008 JKomG
26 Dez 2008 FanOut
26 Dez 2008 MIME
NetBSD
NOTE
02 Mai 2006 AskemosTopMenu
18 Nov 2008 StorageAdaptor
18 Nov 2008 PStoreStorageAdapt
18 Nov 2008 OperationTips
15 Nov 2008 PCRE
04 Nov 2008 ProgrammingLanguag
09 Sep 2008 RelatedProjects
23 Jul 2008 ModuleStructure05
17 Jun 2008 NEWS
17 Jun 2008 HTML
17 Jun 2008 ACM
22 Mai 2008 HTTP
22 Mai 2008 BOSH
10 Mai 2008 AskemosBibliograph
10 Mai 2008 JerrysDreamAbstrac
20 Apr 2008 XSLT
11 Mar 2008 CodingStyle
10 Mar 2008
09 Mar 2008 MIMEConverter
BSD
07 Mar 2008 XML
06 Mar 2008 SRFI
01 Mar 2008 RFC4810
01 Mar 2008 RFC4998






Add


home · features · download · archive