My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Featured
Downloads
Links

Mostly R6RS Scheme/R7RS(draft 5) Scheme system

Version 0.3.2 has been released. As known issues:

  • syntax-case macro does not work as it suppose to be.

Current release

Version 0.3.2

Release Note 0.3.2

Maintainance release.

Fixed bugs:

  • call-next-method can not be used in syntax-case.  Issue 14 .
  • Certain type of procedure call does not work properly.  Issue 15 .
  • Custom binary output port causes SEGV.  Issue 16 .
  • Added missing R6RS macro `assert‘.
  • Fixed improper port class' hierarchy.
  • Fixed socket port's get-bytevector-all. It could not finish in certain situation.
  • Fixed unbound variable error with make-basic-constains in `(rfc x.509) library.
  • Fixed open-inflating-input-port's read procedure. It did not work properly when reading more than one bytes.
  • Fixed loading certificate from keystore with (rsa pkcs :12) library. It loaded only private key.
  • Fixed bytevector output port's getter behaviour. It did not reset the buffer position.

Improvements:

  • Custom binary input port now reads more than one byte at once.
  • bytevector-copy procedure now can take optional arguments start and ends. See the document for more details.
  • base64-decode-string is now be able to return raw bytevector when optional transcoder is #f.
  • Improved bytevector output port and string output port performance. Approximately as twice as faster than before.
  • Psuedo random class is now be able to customise.
  • Cache mechanism now can be extended from Scheme using <fasl-meta> class.
  • Regular expression reader now returns pattern object instead of S expression.

Incompatible changes:

  • custom-prng? procedure is removed.

New libraries:

  • OAuth library (net oauth) has been added. This library supports OAuth 1.0.
  • TLS library (rfc tls) has been added. This library supports TLS 1.0 to TLS 1.2.
  • (srfi :28 random-bits) has been added.
  • Validator metaclass library (sagittarius mop validator) has been added.

In Japanese

Release Note 0.3.1

Maintainance release.

Fixed bugs:

  • Pattern variable can not cross over own library.  Issue 10 .
  • define-library does not accept cond-expand.  Issue 11 .
  • Reader does not read "\x0;".  Issue 12 .
  • bytevector-s64-set! and bytevector-s64-native-set! do not accept #x-8000000000000000.  Issue 13 .
  • make-vector filled bogus value when it was not passed fillter argument.

Improvements.

  • Introduced expandable cryptographic cipher and key generation. For more detail, see the documentation.
  • Introduced expandable hash algorithm. For more detail, see the documentation.
  • Rewrote (asn.1) library.
  • define-class now can handle :metaclass option.

New libraries:

  • (srfi :4) has been added.
  • HMAC library (rfc hmac) has been added.
  • PKCS#5 library (rsa pkcs :5) has been added.
  • PKCS#12 library (rsa pkcs :12) has been added. (not documented yet)
  • bytevector utility library (util bytevector) has been added. (not documented yet)
  • Class allocation class library (sagittarius mop allocation) has been added. (not documented yet)
In Japanese

Release Note 0.3.0

From this release, Sagittarius supports builtin CLOS (not whole conformed).

Fixed bugs:

  • internal define could not be refered from macro. This has been fixed.

New libraries:

  • (clos user) and (clos core) have been added. These provides CLOS related procedures and macros.
  • (getopt) has been added. This library is a wrapper for SRFI-37.
  • (text markdown) has been added. This library is parser for Markdown (not completely conformed)
  • (scribble plugin) (scribble convert) and (scribble parser) libraries have been added.
  • (sagittarius document html) library has been added.

Improvements:

  • regex-replace-first and regex-replace-all can take procedure for its replacement argument. For more detail, see document.
  • binary-port? and textual-port? are now R7RS conformed. It can take any object.
  • get-bytevector-n and get-bytevector-some do not allocate memory for its buffer it unless reached EOF.

New documents:

  • (sagittarius process) library has been documented.

In Japanese

Build tips

If you are using Ubuntu 11.10 (which I tested from scratch), you need to install these packages.

cmake, libgc-dev, zlib1g-dev and libffi-dev.

cmake and libffi-dev must be installed (bundled libffi is only for Windows, including Cygwin), the other can be installed during building, however it is not managed by package manager so it might cause problems.

Powered by Google Project Hosting