Askemos 2000 (Archive)
home · features · download · archive
DrScheme · JFWVirtualMachines
test

TargetPlatform

Note: text is very much a draft

A plattform is ... essentially a (virtual) machine _or_ scheme implementaion.

A port is the minimal set of compatible modifications required to run the code on the platform.

A port is minimal, if the kernel produces the same results as the original and the port supports at least one (network) access protocol supported by another plattform. (This means it can't exist on just one platform and refuse to communicate to other plattforms.) A port is complete, if it's minimal and supports at least one storage adaptor.

Notes on possible targets

Other Scheme Implementations

  1. Chicken http://www.call-with-current-continuation.org : the port almost works
  2. Guile http://www.gnu.org/software/guile/guile.html : has gotten momentum since Askemos was implemented. Port to the implementation strategy "libxml2 + libxslt + guile" should be easy with the existing chicken code.
  3. bigloo: my beloved, fast bigloo: too many global variables --> no preemptive threads, C stack used --> partial call/cc. Update: new version seems to support pthreads and asynch i/o. Port to bigloo schould be retried.
  4. DrScheme?: due to C++ interface in DrScheme? there's some chance that the texas persistant store might work there. In the latter case a complete port should be simple.

Virtual Machines

A loose collection of different concepts of virtual machines.

Every ProgrammingLanguageScheme has one, somehow.

Idel is a virtual machine to run and restrict code in a sadbox similar to Java, just better.

http://nekovm.org/ Neko has a compiler and virtual machine. The Virtual Machine is both very lightweight and extremely well optimised so that it can run very quickly. The VM can be easily embedded into any application and your libraries are directly accessable using the C foreign function interface.

The llvm is a Low Level Virtual Machine forth

http://www.parrotcode.org/parrot is a continuation (rather than stack) based virtual machine, originally intented for perl6, which comes with a variety of language implementations

plex86.org

ivm.

java: minimal port probably simple because of kawa. I need details about persistancy. kissme : GPL java vm.

TODO look at artyomr.narod.ru, LGPL persistense layer for java

msil microsofts answer to java. The more I read about C# (which is rarly rocket since but just different) the more I'm skeptic on the actual advantages.

Anyway it backs up the choice of (R)Scheme (which already compiles into bytecode and C). Adding another byte code back end won't be a seroius problem.

TODO:there should be a .net strategy paper laying out the facts.





border
last modification: Fri, 19 Mar 2004 23:11:14 +0100
authors: Adc5dd0c30f6e63932811ed60e019bb2d,
document identifier: A849640f672ed0df0958abc0712110f3c
delivered to Af4aad764b0fb48d49089dbe7880b1a03 at Sun, 05 Feb 2012 06:48:14 +0100
short comments


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