Subject: CVS commit: wip/hs-husk-scheme
From: Ryosuke Moro
Date: 2014-03-13 13:14:01
Message id: E1WO4Wh-0005P4-0p@sfs-ml-2.v29.ch3.sourceforge.com

Log Message:
Update to 3.16.1

ChangeLog:
v3.16.1
--------

- Allow import of a library in the same directory as a program. For example to \ 
import `lib.sld`:

        (import (lib))

Bug Fixes:

- Husk no longer throws an error during expansion of a library macro that
  references another macro which is not exported from the same library.
- Fixed a bug where a `syntax-rules` macro's literal identifier would not
  match the input when both identifiers are equal and both have no
  lexical binding.

v3.16
--------

- Improved import of libraries:

  - Husk now detects cyclic dependencies and throws an error instead of going
    into an infinite loop.
  - Each library is only evaluated once during the import process.

- `begin` now has the ability to evaluate contained expressions and definitions
  as if the enclosing `begin` were not present, per R7RS. For example:

        huski> x
        Getting an unbound variable: x
        huski> (begin (define x 28) x)
        28
        huski> x
        28

- Added the following R7RS I/O functions: 

    - `get-output-bytevector`
    - `get-output-string`
    - `open-input-bytevector`
    - `open-input-string`
    - `open-output-bytevector`
    - `open-output-string`
    - `read-string`
    - `write-string`

- Added an `-i` command line option to `huski`. This option will start the
  interactive REPL after a file specified on the command line is executed,
  and has no effect if no file is specified.

Haskell API:

- The `Port` data type has been extended to include an optional in-memory buffer:
 
        Port Handle (Maybe Knob)

  These changes are isolated in husk, but if your code uses any `Port`
  constructors, you would need to change them, EG: `Port _ Nothing`.

Files:
RevisionActionfile
1.4modifywip/hs-husk-scheme/Makefile
1.4modifywip/hs-husk-scheme/buildlink3.mk
1.4modifywip/hs-husk-scheme/distinfo