Subject: CVS commit: wip/chicken-current
From: Aleksej Saushev
Date: 2009-04-07 12:04:34
Message id: E1Lr8Aj-000845-Ma@ddv4jf1.ch3.sourceforge.com

Log Message:
Update to Chicken 4.0.0 release.

Changes since 3.4.0:

- removed `apropos' and `apropos-list' from the "utils" library unit;
  available as an extension
- removed texinfo and PDF documentation - this will possible be added back 
  later
- replaced PCRE regex engine with Alex Shinn's "irregex" regular expression
  package
- removed `-extension' option
- removed `-static-extensions' csc option and added `-static-extension NAME'
- `regex' unit: removed `regexp*' and `regex-optimize'
- added `CHICKEN_new_finalizable_gc_root()'
- `length' checks its argument for being cyclic
- removed custom declarations and "link-options" and \ 
"c-options" declarations
- deprecated "-quiet" option to "chicken" program
- added "-update-db" option to chicken-install
- the compiler now suggests possibly required module-imports
- moved non-standard syntax-definitions into "chicken-syntax" library unit
- the pretty-printer prints the end-of-file object readably now
- alternative conditional execution paths have separate allocation computation
  (previously the allocation of all alternatives was coalesced)
- removed unused "%kmp-search" from "srfi-13" library unit
- expander handles syntax-reexports and makes unexported syntax available
  for exported expanders in import libraries
- added checks in some procedures in the "tcp" library unit
- the macro system has been completely overhauled and converted 
  to hygienic macros
- a macro-aware module system has been added
- added "-sx" option to csi
- removed the following deprecated functions:
   [un]shift!
   andmap ormap
   byte-vector? byte-vector-fill!
   make-byte-vector byte-vector
   byte-vector-set! byte-vector-ref 
   byte-vector->list list->byte-vector
   string->byte-vector byte-vector->string
   byte-vector-length
   make-static-byte-vector static-byte-vector->pointer
   byte-vector-move! byte-vector-append!
   set-file-position! set-user-id! set-group-id!
   set-process-group-id!
   macro? undefine-macro!
- the situation-identifiers "run-time" and "compile-time" have
  been removed
- the compiler options "-check-imports", "-import" and \ 
"-emit-exports"
  have been removed
- new procedures:
  strip-syntax
  expand
- new macros
  define-syntax
  module
  export
- the following macros have been removed:
    define-foreign-record
    define-foreign-enum
    define-macro
    define-extension
- "local" mode, in which locally defined exported toplevel variables can
  be inlined
- new options and declarations "[-]local", \ 
"[-]inline-global" and "-emit-inline-file"
- optimization levels changed to use inlining:
  -optimize-level 3: enables -inline -local (but *not* -unsafe)
  -optimize-level 4: enables -inline -local -unsafe
- increased default inlining-limit to 20
- support for cross-module inlining
- "make <VARIABLES> bench" runs the benchmark suite
- "chicken-setup" has been replaced by new command line tools
  "chicken-install", "chicken-uninstall" and \ 
"chicken-status", which are
  more flexible and allow greater freedom when creating local or application-
  specific repositories
- extension-installation can be done directly from SVN repositories or a local
  file tree
- enabled chicken mirror site as alternative download location

Files:
RevisionActionfile
1.28modifywip/chicken-current/Makefile