[Top][All Lists]

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

[Gnu-arch-users] Pika milestone: character or cons?

From: Tom Lord
Subject: [Gnu-arch-users] Pika milestone: character or cons?
Date: Fri, 21 Nov 2003 16:13:29 -0800 (PST)

A new release from the Pika Scheme project is available at the

  |                                                                |
  |                       |
  |             |
  |                                                                |

This release is called pika-0.1pre1 and here's what's new:

~ Character Type Implemented
~ Nil Type Implemented
~ Cons Pair Type Implemented

  Each of the above includes the core run-time system interface
  to the type, reference manual documentation for that interface,
  and unit tests.

* How to Get Involved

  If you believe that you're competent to help specify and/or implement
  a Scheme dialect and VM, and would like to help in that regard, 
  please sign up for the pika-dev mailing list:

  and let's take it from there.

  Also:  I am living these days as a "free software Internet busker"
  which means that I write free software, and then from time to time
  "pass the hat" to collect some money to get by on.

  You can read about my other projects (the arch revision control
  system, the hackerlab C library, and the package-framework
  configure/build framework) _and_ find my glorious "paypal link" at
  either of these mirrors:

  Thank you for your support.


                            What is Pika?

* The Goal

  The primary objective of this project is to build an implementation of
  Scheme which:

    * can run as an interpreter
    * is written in relatively portable C
    * has good performance running interpreted code
    * is easily extended by writing new primitive functions in C
    * is easily targeted by a Scheme->C compiler
    * has a precise garbage collector
    * can have an incremental garbage collector
    * implements R5RS precisely
    * has a small-source-code and small-footprint core
    * supports multiple instances in a single process
    * has a firmly abstract interface to the representation of Scheme types
    * can run multi-threaded programs
    * has first-class environments
    * has a low start-up time
    * has a complete set of features for Posix systems programming
    * has a richy featureful string and buffer type, including
      superlative Unicode support

  HERE} doesn't already satisfy all or most of those requirements.  I
  almost certainly respectfully disagree -- but I'm not interested in
  arguing.  I agree that there are several quite virtuous
  implementations and will presume that your favorite is likely to be
  one of them.

  The approach that I'm taking with Pika is to define an abstract
  virtual machine which "puns" well as several different things.  The
  VM should be:

    * suitable for direct interpretation, as by a bytecode engine

    * an easy target for a simplistic Scheme compiler

    * a useful intermediate target for a native or ->C Scheme

    * suitable for a static code safety verifier, similar to Java's

    * a useful intermediate target for a native JIT compiler

reply via email to

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