guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] GNU Guile branch, master, updated. release_1-9-10-228-g0


From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, master, updated. release_1-9-10-228-g07d22c0
Date: Tue, 01 Jun 2010 11:25:53 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=07d22c0259b0e6e20cc1acaddb32e18b25f2dc44

The branch, master has been updated
       via  07d22c0259b0e6e20cc1acaddb32e18b25f2dc44 (commit)
       via  8a302245f0882fda0a24b62af57faa11e5bbec73 (commit)
      from  1b68d6276260f68b07103fc6a792effcc135c063 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 07d22c0259b0e6e20cc1acaddb32e18b25f2dc44
Author: Andy Wingo <address@hidden>
Date:   Tue Jun 1 13:26:11 2010 +0200

    rename (rnrs bytevector) to (rnrs bytevectors)
    
    * module/rnrs/bytevectors.scm: Rename to (rnrs bytevectors), from (rnrs
      bytevector), to match the name from the R6RS.
    
    * benchmark-suite/benchmarks/bytevectors.bm:
    * doc/ref/api-data.texi:
    * doc/ref/api-foreign.texi:
    * libguile/bytevectors.c:
    * module/6/rnrs.scm:
    * module/language/assembly.scm:
    * module/language/assembly/compile-bytecode.scm:
    * module/language/assembly/decompile-bytecode.scm:
    * module/language/glil/compile-assembly.scm:
    * module/language/tree-il/primitives.scm:
    * module/srfi/srfi-4.scm:
    * module/srfi/srfi-4/gnu.scm:
    * module/system/foreign.scm:
    * test-suite/standalone/test-ffi:
    * test-suite/tests/asm-to-bytecode.test:
    * test-suite/tests/bytevectors.test:
    * test-suite/tests/foreign.test:
    * test-suite/tests/r6rs-ports.test: Update all referrers.

commit 8a302245f0882fda0a24b62af57faa11e5bbec73
Author: Andy Wingo <address@hidden>
Date:   Tue Jun 1 12:21:08 2010 +0200

    more 1.9.11 NEWS updates
    
    * NEWS: More updates.

-----------------------------------------------------------------------

Summary of changes:
 NEWS                                            |   92 +++++++++++++++++++++++
 benchmark-suite/benchmarks/bytevectors.bm       |    8 +-
 doc/ref/api-data.texi                           |    2 +-
 doc/ref/api-foreign.texi                        |    2 +-
 libguile/bytevectors.c                          |    2 +-
 module/6/rnrs.scm                               |    4 +-
 module/language/assembly.scm                    |    2 +-
 module/language/assembly/compile-bytecode.scm   |    2 +-
 module/language/assembly/decompile-bytecode.scm |    2 +-
 module/language/glil/compile-assembly.scm       |    2 +-
 module/language/tree-il/primitives.scm          |    2 +-
 module/rnrs/{bytevector.scm => bytevectors.scm} |    8 +-
 module/srfi/srfi-4.scm                          |    2 +-
 module/srfi/srfi-4/gnu.scm                      |    4 +-
 module/system/foreign.scm                       |    2 +-
 test-suite/standalone/test-ffi                  |    4 +-
 test-suite/tests/asm-to-bytecode.test           |    2 +-
 test-suite/tests/bytevectors.test               |    2 +-
 test-suite/tests/foreign.test                   |    2 +-
 test-suite/tests/r6rs-ports.test                |    2 +-
 20 files changed, 120 insertions(+), 28 deletions(-)
 rename module/rnrs/{bytevector.scm => bytevectors.scm} (94%)

diff --git a/NEWS b/NEWS
index 98fd487..31fa2ee 100644
--- a/NEWS
+++ b/NEWS
@@ -173,6 +173,98 @@ The introductory sections of the manual have been 
reorganized
 significantly, making it more accessible to new users of Guile. Check it
 out!
 
+** The module namespace is now separate from the value namespace
+
+It was a little-known implementation detail of Guile's module system
+that it was built on a single hierarchical namespace of values -- that
+if there was a module named `(foo bar)', then there was a also module
+named `(foo)' with a binding from `bar' to the `(foo bar)' module.
+
+This was a neat trick, but presented a number of problems. One problem
+was that the bindings in a module were not apparent from the module
+itself; perhaps the `(foo)' module had a private binding for `bar', and
+then an external contributor defined `(foo bar)'. In the end there can
+be only one binding, so one of the two will see the wrong thing, and
+produce an obtuse error of unclear provenance.
+
+Also, the public interface of a module was also bound in the value
+namespace, as `%module-public-interface'. This was a hack from the early
+days of Guile's modules.
+
+Both of these warts have been fixed by the addition of fields in the
+`module' data type. Access to modules and their interfaces from the
+value namespace has been deprecated, and all accessors use the new
+record accessors appropriately.
+
+When Guile is built with support for deprecated code, as is the default,
+the value namespace is still searched for modules and public interfaces,
+and a deprecation warning is raised as appropriate.
+
+Finally, to support lazy loading of modules as one used to be able to do
+with module binder procedures, Guile now has submodule binders, called
+if a given submodule is not found. See boot-9.scm for more information.
+    
+** New procedures: module-ref-submodule, module-define-submodule,
+   nested-ref-module, nested-define-module!, local-ref-module,
+   local-define-module
+
+These new accessors are like their bare variants, but operate on
+namespaces instead of values.
+
+** The (app modules) module tree is officially deprecated
+
+It used to be that one could access a module named `(foo bar)' via
+`(nested-ref the-root-module '(app modules foo bar))'. The `(app
+modules)' bit was a never-used and never-documented abstraction, and has
+been deprecated. See the following mail for a full discussion:
+
+    http://lists.gnu.org/archive/html/guile-devel/2010-04/msg00168.html
+
+The `%app' binding is also deprecated.
+
+** Deprecated address@hidden' syntax
+
address@hidden' was part of an older implementation of the Emacs Lisp language,
+and is no longer used.
+    
+** New fluid: `%file-port-name-canonicalization'
+    
+This fluid parameterizes the file names that are associated with file
+ports. If %file-port-name-canonicalization is 'absolute, then file names
+are canonicalized to be absolute paths. If it is 'relative, then the
+name is canonicalized, but any prefix corresponding to a member of
+`%load-path' is stripped off. Otherwise the names are passed through
+unchanged.
+
+** Source file name canonicalization in `compile-file', `compile-and-load'
+    
+These file-compiling procedures now bind
+%file-port-name-canonicalization to their `#:canonicalization' keyword
+argument, which defaults to 'relative. In this way, one might compile
+"../module/ice-9/boot-9.scm", but the path that gets residualized into
+the .go is "ice-9/boot-9.scm".
+
+** Deprecate arity access via (procedure-properties proc 'arity)
+
+Instead of accessing a procedure's arity as a property, use the new
+`procedure-minimum-arity' function, which gives the most permissive
+arity that the the function has, in the same format as the old arity
+accessor.
+
+** Remove redundant accessors: program-name, program-documentation,
+   program-properties, program-property
+    
+Instead, just use procedure-name, procedure-documentation,
+procedure-properties, and procedure-property.
+
+** Enhance documentation for support of Emacs Lisp's `nil'
+
+See "Nil" in the manual, for more details.
+    
+** Enhance documentation for support of other languages
+
+See "Other Languages" in the manual, for more details.
+
 ** And of course, the usual collection of bugfixes
  
 Interested users should see the ChangeLog for more information.
diff --git a/benchmark-suite/benchmarks/bytevectors.bm 
b/benchmark-suite/benchmarks/bytevectors.bm
index 66c88aa..b30bb38 100644
--- a/benchmark-suite/benchmarks/bytevectors.bm
+++ b/benchmark-suite/benchmarks/bytevectors.bm
@@ -1,7 +1,7 @@
 ;;; -*- mode: scheme; coding: iso-8859-1; -*-
 ;;; R6RS Byte Vectors.
 ;;;
-;;; Copyright 2009 Free Software Foundation, Inc.
+;;; Copyright 2009, 2010 Free Software Foundation, Inc.
 ;;;
 ;;; This program is free software; you can redistribute it and/or
 ;;; modify it under the terms of the GNU Lesser General Public License
@@ -19,9 +19,9 @@
 ;;; Street, Fifth Floor, Boston, MA 02110-1301 USA
 
 (define-module (benchmarks bytevector)
-  :use-module (rnrs bytevector)
-  :use-module (srfi srfi-4)
-  :use-module (benchmark-suite lib))
+  #:use-module (rnrs bytevectors)
+  #:use-module (srfi srfi-4)
+  #:use-module (benchmark-suite lib))
 
 (define bv (make-bytevector 16384))
 
diff --git a/doc/ref/api-data.texi b/doc/ref/api-data.texi
index 420660b..40bd969 100755
--- a/doc/ref/api-data.texi
+++ b/doc/ref/api-data.texi
@@ -4033,7 +4033,7 @@ or @code{#f} if they are stored in an 8-bit buffer
 @cindex bytevector
 @cindex R6RS
 
-A @dfn{bytevector} is a raw bit string.  The @code{(rnrs bytevector)}
+A @dfn{bytevector} is a raw bit string.  The @code{(rnrs bytevectors)}
 module provides the programming interface specified by the
 @uref{http://www.r6rs.org/, Revised^6 Report on the Algorithmic Language
 Scheme (R6RS)}.  It contains procedures to manipulate bytevectors and
diff --git a/doc/ref/api-foreign.texi b/doc/ref/api-foreign.texi
index 2a4f0df..728c786 100644
--- a/doc/ref/api-foreign.texi
+++ b/doc/ref/api-foreign.texi
@@ -770,7 +770,7 @@ code makes @code{memcpy} available to Scheme:
 To invoke @code{memcpy}, one must pass it foreign pointers:
 
 @example
-(use-modules (rnrs bytevector))
+(use-modules (rnrs bytevectors))
 
 (define src
   (bytevector->foreign (u8-list->bytevector '(0 1 2 3 4 5 6 7))))
diff --git a/libguile/bytevectors.c b/libguile/bytevectors.c
index 853a3cf..de8077e 100644
--- a/libguile/bytevectors.c
+++ b/libguile/bytevectors.c
@@ -2214,7 +2214,7 @@ void
 scm_bootstrap_bytevectors (void)
 {
   /* This must be instantiated here because the generalized-vector API may
-     want to access bytevectors even though `(rnrs bytevector)' hasn't been
+     want to access bytevectors even though `(rnrs bytevectors)' hasn't been
      loaded.  */
   scm_null_bytevector = make_bytevector (0, SCM_ARRAY_ELEMENT_TYPE_VU8);
 
diff --git a/module/6/rnrs.scm b/module/6/rnrs.scm
index d8d7567..8fb83e1 100644
--- a/module/6/rnrs.scm
+++ b/module/6/rnrs.scm
@@ -75,7 +75,7 @@
          values apply quasiquote unquote unquote-splicing let-syntax 
          letrec-syntax syntax-rules identifier-syntax
 
-         ;; (rnrs bytevector)
+         ;; (rnrs bytevectors)
          
          endianness native-endianness bytevector? make-bytevector 
          bytevector-length bytevector=? bytevector-fill! bytevector-copy! 
@@ -218,7 +218,7 @@
          (rnrs arithmetic flonums (6))
          (rnrs base (6))
 
-         (rnrs bytevector)
+         (rnrs bytevectors)
 
          (rnrs conditions (6))
          (rnrs control (6))
diff --git a/module/language/assembly.scm b/module/language/assembly.scm
index 946caea..e119628 100644
--- a/module/language/assembly.scm
+++ b/module/language/assembly.scm
@@ -19,7 +19,7 @@
 ;;; Code:
 
 (define-module (language assembly)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:use-module (system base pmatch)
   #:use-module (system vm instruction)
   #:use-module ((srfi srfi-1) #:select (fold))
diff --git a/module/language/assembly/compile-bytecode.scm 
b/module/language/assembly/compile-bytecode.scm
index 8a4c5cd..02695d7 100644
--- a/module/language/assembly/compile-bytecode.scm
+++ b/module/language/assembly/compile-bytecode.scm
@@ -23,7 +23,7 @@
   #:use-module (language assembly)
   #:use-module (system vm instruction)
   #:use-module (srfi srfi-4)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:use-module (rnrs io ports)
   #:use-module ((srfi srfi-1) #:select (fold))
   #:use-module ((srfi srfi-26) #:select (cut))
diff --git a/module/language/assembly/decompile-bytecode.scm 
b/module/language/assembly/decompile-bytecode.scm
index 3ae96d2..605e3df 100644
--- a/module/language/assembly/decompile-bytecode.scm
+++ b/module/language/assembly/decompile-bytecode.scm
@@ -22,7 +22,7 @@
   #:use-module (system vm instruction)
   #:use-module (system base pmatch)
   #:use-module (srfi srfi-4)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:use-module (language assembly)
   #:use-module ((system vm objcode) #:select (byte-order))
   #:export (decompile-bytecode))
diff --git a/module/language/glil/compile-assembly.scm 
b/module/language/glil/compile-assembly.scm
index 0add22e..76c19b4 100644
--- a/module/language/glil/compile-assembly.scm
+++ b/module/language/glil/compile-assembly.scm
@@ -27,7 +27,7 @@
   #:use-module ((system vm program) #:select (make-binding))
   #:use-module (ice-9 receive)
   #:use-module ((srfi srfi-1) #:select (fold))
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:export (compile-assembly))
 
 ;; Variable cache cells go in the object table, and serialize as their
diff --git a/module/language/tree-il/primitives.scm 
b/module/language/tree-il/primitives.scm
index c5a80c0..eae68de 100644
--- a/module/language/tree-il/primitives.scm
+++ b/module/language/tree-il/primitives.scm
@@ -20,7 +20,7 @@
 
 (define-module (language tree-il primitives)
   #:use-module (system base pmatch)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:use-module (system base syntax)
   #:use-module (language tree-il)
   #:use-module (srfi srfi-4)
diff --git a/module/rnrs/bytevector.scm b/module/rnrs/bytevectors.scm
similarity index 94%
rename from module/rnrs/bytevector.scm
rename to module/rnrs/bytevectors.scm
index 9b8ac45..b33afe0 100644
--- a/module/rnrs/bytevector.scm
+++ b/module/rnrs/bytevectors.scm
@@ -1,4 +1,4 @@
-;;;; bytevector.scm --- R6RS bytevector API           -*- coding: utf-8 -*-
+;;;; bytevectors.scm --- R6RS bytevector API           -*- coding: utf-8 -*-
 
 ;;;;   Copyright (C) 2009, 2010 Free Software Foundation, Inc.
 ;;;;
@@ -28,9 +28,9 @@
 ;;;
 ;;; Code:
 
-(define-module (rnrs bytevector)
-  :export-syntax (endianness)
-  :export (native-endianness bytevector?
+(define-module (rnrs bytevectors)
+  #:export-syntax (endianness)
+  #:export (native-endianness bytevector?
            make-bytevector bytevector-length bytevector=? bytevector-fill!
            bytevector-copy! bytevector-copy
            uniform-array->bytevector
diff --git a/module/srfi/srfi-4.scm b/module/srfi/srfi-4.scm
index 8438ba3..818ae7a 100644
--- a/module/srfi/srfi-4.scm
+++ b/module/srfi/srfi-4.scm
@@ -27,7 +27,7 @@
 ;;; Code:
 
 (define-module (srfi srfi-4)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:export (;; Unsigned 8-bit vectors.
             u8vector? make-u8vector u8vector u8vector-length u8vector-ref
             u8vector-set! u8vector->list list->u8vector
diff --git a/module/srfi/srfi-4/gnu.scm b/module/srfi/srfi-4/gnu.scm
index ccb1ab1..8cd5e89 100644
--- a/module/srfi/srfi-4/gnu.scm
+++ b/module/srfi/srfi-4/gnu.scm
@@ -1,6 +1,6 @@
 ;;; Extensions to SRFI-4
 
-;;     Copyright (C) 2009 Free Software Foundation, Inc.
+;;     Copyright (C) 2009, 2010 Free Software Foundation, Inc.
 ;;
 ;; This library is free software; you can redistribute it and/or
 ;; modify it under the terms of the GNU Lesser General Public
@@ -23,7 +23,7 @@
 ;;; Code:
 
 (define-module (srfi srfi-4 gnu)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:use-module (srfi srfi-4)
   #:export (;; Complex numbers with 32- and 64-bit components.
             c32vector? make-c32vector c32vector c32vector-length c32vector-ref
diff --git a/module/system/foreign.scm b/module/system/foreign.scm
index 9f389f2..692dd92 100644
--- a/module/system/foreign.scm
+++ b/module/system/foreign.scm
@@ -17,7 +17,7 @@
 
 
 (define-module (system foreign)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:export (void
             float double
             int unsigned-int long unsigned-long size_t
diff --git a/test-suite/standalone/test-ffi b/test-suite/standalone/test-ffi
index debe4e1..7c859f2 100755
--- a/test-suite/standalone/test-ffi
+++ b/test-suite/standalone/test-ffi
@@ -3,7 +3,7 @@ exec guile -q -s "$0" "$@"
 !#
 
 (use-modules (system foreign)
-             (rnrs bytevector))
+             (rnrs bytevectors))
 
 (define lib
   (dynamic-link (string-append (getenv "builddir") "/libtest-ffi")))
@@ -179,7 +179,7 @@ exec guile -q -s "$0" "$@"
 ;;; Global symbols.
 ;;;
 
-(use-modules ((rnrs bytevector) #:select (utf8->string)))
+(use-modules ((rnrs bytevectors) #:select (utf8->string)))
 
 (if (defined? 'setlocale)
     (setlocale LC_ALL "C"))
diff --git a/test-suite/tests/asm-to-bytecode.test 
b/test-suite/tests/asm-to-bytecode.test
index 29505a8..0d8fecb 100644
--- a/test-suite/tests/asm-to-bytecode.test
+++ b/test-suite/tests/asm-to-bytecode.test
@@ -15,7 +15,7 @@
 ;;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 
USA
 
 (define-module (test-suite tests asm-to-bytecode)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:use-module ((rnrs io ports) #:select (open-bytevector-output-port))
   #:use-module (test-suite lib)
   #:use-module (system vm instruction)
diff --git a/test-suite/tests/bytevectors.test 
b/test-suite/tests/bytevectors.test
index 3a7cc2d..68523b7 100644
--- a/test-suite/tests/bytevectors.test
+++ b/test-suite/tests/bytevectors.test
@@ -20,7 +20,7 @@
 (define-module (test-bytevector)
   :use-module (test-suite lib)
   :use-module (system base compile)
-  :use-module (rnrs bytevector))
+  :use-module (rnrs bytevectors))
 
 ;;; Some of the tests in here are examples taken from the R6RS Standard
 ;;; Libraries document.
diff --git a/test-suite/tests/foreign.test b/test-suite/tests/foreign.test
index b1add53..10fdf46 100644
--- a/test-suite/tests/foreign.test
+++ b/test-suite/tests/foreign.test
@@ -22,7 +22,7 @@
 
 (define-module (test-foreign)
   #:use-module (system foreign)
-  #:use-module (rnrs bytevector)
+  #:use-module (rnrs bytevectors)
   #:use-module (test-suite lib))
 
 
diff --git a/test-suite/tests/r6rs-ports.test b/test-suite/tests/r6rs-ports.test
index e41d18a..dae6295 100644
--- a/test-suite/tests/r6rs-ports.test
+++ b/test-suite/tests/r6rs-ports.test
@@ -22,7 +22,7 @@
   :use-module (srfi srfi-1)
   :use-module (srfi srfi-11)
   :use-module (rnrs io ports)
-  :use-module (rnrs bytevector))
+  :use-module (rnrs bytevectors))
 
 ;;; All these tests assume Guile 1.8's port system, where characters are
 ;;; treated as octets.


hooks/post-receive
-- 
GNU Guile



reply via email to

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