guile-cvs
[Top][All Lists]
Advanced

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

guile/guile-scsh ChangeLog INCOMPAT Makefile.am...


From: Gary Houston
Subject: guile/guile-scsh ChangeLog INCOMPAT Makefile.am...
Date: Wed, 06 Dec 2000 15:10:39 -0800

CVSROOT:        /cvs
Module name:    guile
Changes by:     Gary Houston <address@hidden>   00/12/06 15:10:39

Modified files:
        guile-scsh     : ChangeLog INCOMPAT Makefile.am USAGE init.scm 
                         make-module-list scsh.scm syntax-helpers.scm 
                         syntax.scm 
Added files:
        guile-scsh     : fdports.scm 

Log message:
        * init.scm: load (scsh fdports)
        * scsh.scm (stringify): export.
        * Makefile.am (pkgdata_DATA): add fdports.scm.
        * fdports.scm: new file from scsh 0.5.2, with definitions already
        provided by libguile removed.
        * syntax-helpers.scm: export transcribe-process-form.
        use module (scsh utilities) for check-arg.
        * syntax.scm (scsh): don't use (scsh scsh) module, there are
        mutual dependency problems.  code generated by macros in
        syntax.scm will still need (scsh scsh).

CVSWeb URLs:
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/fdports.scm.diff?r1=NONE&r2=1.1
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/ChangeLog.diff?r1=1.47&r2=1.48
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/INCOMPAT.diff?r1=1.19&r2=1.20
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/Makefile.am.diff?r1=1.22&r2=1.23
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/USAGE.diff?r1=1.6&r2=1.7
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/init.scm.diff?r1=1.37&r2=1.38
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/make-module-list.diff?r1=1.3&r2=1.4
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/scsh.scm.diff?r1=1.10&r2=1.11
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/syntax-helpers.scm.diff?r1=1.4&r2=1.5
http://subversions.gnu.org/cgi-bin/cvsweb/guile/guile-scsh/syntax.scm.diff?r1=1.4&r2=1.5

Patches:
Index: guile/guile-scsh/ChangeLog
diff -u guile/guile-scsh/ChangeLog:1.47 guile/guile-scsh/ChangeLog:1.48
--- guile/guile-scsh/ChangeLog:1.47     Mon Dec  4 15:18:03 2000
+++ guile/guile-scsh/ChangeLog  Wed Dec  6 15:10:39 2000
@@ -1,3 +1,16 @@
+2000-12-06  Gary Houston  <address@hidden>
+
+       * init.scm: load (scsh fdports)
+       * scsh.scm (stringify): export.
+       * Makefile.am (pkgdata_DATA): add fdports.scm.
+       * fdports.scm: new file from scsh 0.5.2, with definitions already
+       provided by libguile removed.
+       * syntax-helpers.scm: export transcribe-process-form.
+       use module (scsh utilities) for check-arg.
+       * syntax.scm (scsh): don't use (scsh scsh) module, there are
+       mutual dependency problems.  code generated by macros in
+       syntax.scm will still need (scsh scsh).
+
 2000-12-04  Gary Houston  <address@hidden>
 
        * scsh.scm: define module (scsh scsh).
Index: guile/guile-scsh/INCOMPAT
diff -u guile/guile-scsh/INCOMPAT:1.19 guile/guile-scsh/INCOMPAT:1.20
--- guile/guile-scsh/INCOMPAT:1.19      Mon Nov 27 13:27:04 2000
+++ guile/guile-scsh/INCOMPAT   Wed Dec  6 15:10:39 2000
@@ -1,30 +1,19 @@
 Bugs:
 ====
 
-extended process forms don't work:
-
-(run (echo hello) (> out.log)))
-
 Incompatibilities with the original scsh:
 ========================================
 
-the Guile module system is not compatible with that of Scheme48.  the
-module system isn't yet used for all files.
+the Guile module system is not compatible with the one in Scheme48.
 
-loading guile-scsh may redefine Guile builtins.  e.g., map is
-redefined by list-lib.scm.  This isn't very good.  Maybe use of the
-module system will make this more manageable in future.  Other
-affected procedures are: read-delimited read-delimited! pipe sleep
-exit make-fluid string->list and probably open-file.
-
-the interfaces to the I/O system may be incompatible.
-
 interrupt-set, set-enabled-interrupts, with-interrupts,
 with-enabled-interrupts*, %set-unix-signal-handler and
 %unix-signal-handler have not been implemented.  Within a
 with-enabled-interrupts form, all interrupts are disabled.
 
 [check that the following are still true in 0.5.2]
+
+the interfaces to the I/O system may be incompatible.
 
 generic-receive-message! always returns 2 values: the number of
 bytes read and the address received from.  Likewise for receive-message!
Index: guile/guile-scsh/Makefile.am
diff -u guile/guile-scsh/Makefile.am:1.22 guile/guile-scsh/Makefile.am:1.23
--- guile/guile-scsh/Makefile.am:1.22   Mon Dec  4 15:18:03 2000
+++ guile/guile-scsh/Makefile.am        Wed Dec  6 15:10:39 2000
@@ -6,7 +6,7 @@
 
 pkgdata_DATA = alt-syntax.scm ascii.scm awk.scm bitwise.scm \
        char-set.scm define-foreign-syntax.scm \
-       defrec.scm ekko.scm errno.scm features.scm \
+       defrec.scm ekko.scm errno.scm fdports.scm features.scm \
        fileinfo.scm filesys.scm \
        fluid.scm fname.scm fr.scm glob.scm here.scm \
        init.scm jar-defrecord.scm let-opt.scm \
Index: guile/guile-scsh/USAGE
diff -u guile/guile-scsh/USAGE:1.6 guile/guile-scsh/USAGE:1.7
--- guile/guile-scsh/USAGE:1.6  Mon Dec  4 15:27:19 2000
+++ guile/guile-scsh/USAGE      Wed Dec  6 15:10:39 2000
@@ -6,8 +6,24 @@
 Warning: this will take a while and will clobber various Guile
 definitions.
 
-It's probably more useful to import parts of scsh individually using
-the Guile module system.
+For script usage it's probably more useful to import parts of scsh
+individually using the Guile module system.  However note that macros
+may expand to code that requires additional modules.  e.g., `run' is
+defined in (scsh syntax), but requires loading (scsh procobj), (scsh
+scsh), (scsh fdports) and (scsh syntax-helpers) to execute sucessfully.
+
+One way to avoid clobbering definitions from libguile is to define a
+new module for the code that uses guile-scsh.  e.g.,
+
+#!/usr/bin/guile -s
+!#
+(define-module (test)
+   :use-module (scsh syntax)
+   :use-module (scsh syntax-helpers)
+   :use-module (scsh procobj)
+   :use-module (scsh scsh)
+   :use-module (scsh fdports))
+(run (echo hello) (> out.log))
 
 The remainder of this file lists the modules and the exported symbols
 for each.  The modules don't necessarily correspond with scsh
@@ -37,6 +53,9 @@
 (scsh signals)
 (syntax-error)
 
+(scsh fdports)
+(open/create+trunc open/write+append+create shell-open)
+
 (scsh syntax-helpers)
 (transcribe-process-form)
 
@@ -74,6 +93,10 @@
 (define-record-discloser define-record)
 
 (scsh lib string-lib)
+;; replaces:
+;; string-downcase string-downcase!
+;; string-upcase string-upcase! string-index
+;; string-fill! string-copy string->list
 (string-map string-map! string-fold string-unfold string-fold-right 
string-unfold-right string-tabulate string-for-each string-iter string-every 
string-any string-compare string-compare-ci substring-compare 
substring-compare-ci string= string< string> string<= string>= string<> 
string-ci= string-ci< string-ci> string-ci<= string-ci>= string-ci<> substring= 
substring<> substring-ci= substring-ci<> substring< substring> substring-ci< 
substring-ci> substring<= substring>= substring-ci<= substring-ci>= 
string-upper-case? string-lower-case? capitalize-string capitalize-words 
string-downcase string-upcase capitalize-string! capitalize-words! 
string-downcase! string-upcase! string-take string-take-right string-drop 
string-drop-right string-pad string-pad-right string-trim string-trim-right 
string-trim-both string-filter string-delete string-index string-index-right 
string-skip string-skip-right string-prefix-count string-prefix-count-ci 
string-suffix-count string-suffix-count-ci substring-prefix-count 
substring-prefix-count-ci substring-suffix-count substring-suffix-count-ci 
string-prefix? string-prefix-ci? string-suffix? string-suffix-ci? 
substring-prefix? substring-prefix-ci? substring-suffix? substring-suffix-ci? 
substring? substring-ci? string-fill! string-copy! string-copy string-reverse 
string-reverse! reverse-list->string string->list string-concat 
string-concat/shared string-append/shared xsubstring string-xcopy! join-strings 
make-kmp-restart-vector parse-final-start+end parse-start+end 
check-substring-spec)
 
 (scsh errno)
@@ -160,6 +183,7 @@
 (file-name-as-directory file-name-directory? file-name-non-directory? 
directory-as-file-name ensure-file-name-is-nondirectory file-name-absolute? 
file-name-directory file-name-nondirectory split-file-name path-list->file-name 
file-name-extension file-name-sans-extension replace-extension parse-file-name 
expand-file-name simplify-file-name resolve-tilde-file-name resolve-file-name 
absolute-file-name home-dir home-file)
 
 (scsh fluid)
+;; replaces make-fluid
 (make-fluid set-fluid! fluid let-fluid)
 
 (scsh stringcoll)
@@ -175,6 +199,10 @@
 (xcons list-tabulate list-copy circular-list iota proper-list? circular-list? 
dotted-list? not-pair? null-list? list= first second third fourth fifth sixth 
seventh eighth ninth tenth car+cdr take drop take-right drop-right take! 
drop-right! take-while drop-while take-while! split-at split-at! span break 
span! break! last length+ append-reverse append-reverse! concatenate 
concatenate! zip unzip1 unzip2 unzip3 unzip4 unzip5 count unfold unfold-right 
fold unfold pair-fold reduce fold-right unfold-right pair-fold-right 
reduce-right append-map append-map! map! pair-for-each filter-map map-in-order 
filter partition remove filter! partition! remove! find find-tail any every 
list-index delete delete! delete-duplicates delete-duplicates! alist-cons 
alist-copy alist-delete alist-delete! lset<= lset= lset-adjoin lset-union 
lset-union! lset-intersection lset-intersection! lset-difference 
lset-difference! lset-xor lset-xor! lset-diff+intersection 
lset-diff+intersection! map for-each member assoc)
 
 (scsh syntax)
+;; define-simple-syntax generates code that requires
+;; (scsh alt-syntax).
+;; other macros generate code that requires
+;; (scsh scsh), (scsh procobj), (scsh syntax-helpers).
 (define-simple-syntax exec-epf & run || && run-collecting run/port+proc 
run/port run/strings run/file run/string run/sexp run/sexps)
 
 (scsh glob)
@@ -206,4 +234,4 @@
 (bind-listen-accept-loop socket? socket:family socket:inport socket:outport 
socket-address? socket-address:address socket-address:family 
internet-address->socket-address socket-address->internet-address create-socket 
close-socket bind-socket connect-socket listen-socket accept-connection 
socket-remote-address socket-local-address shutdown-socket create-socket-pair 
receive-message receive-message! receive-message/partial 
receive-message!/partial send-message send-message/partial socket-option 
set-socket-option host-info host-info? host-info:name host-info:aliases 
host-info:addresses network-info network-info? network-info:name 
network-info:aliases network-info:net service-info service-info? 
service-info:name service-info:aliases service-info:port service-info:protocol 
protocol-info protocol-info? protocol-info:name protocol-info:aliases 
protocol-info:number)
 
 (scsh scsh)
-(call-terminally fork/pipe %fork/pipe tail-pipe tail-pipe+ alist-update 
alist-compress add-before add-after with-env* with-total-env* with-cwd* 
with-umask* create-temp-file temp-file-channel run/collecting* run/port+proc* 
run/port* run/file* run/string* run/strings* run/sexp* run/sexps* port->string 
port->string-list port->sexp-list port->list port-fold char-filter 
string-filter y-or-n? stdio->stdports with-stdio-ports* stdports->stdio 
command-line-arguments arg* arg argv home-directory exec-path-list suspend 
exec/env exec-path/env exec-path exec fork %fork with-cwd with-umask with-env 
with-total-env run/port run/file run/string run/strings run/sexp run/sexps 
with-stdio-ports)
+(call-terminally fork/pipe %fork/pipe tail-pipe tail-pipe+ alist-update 
alist-compress add-before add-after with-env* with-total-env* with-cwd* 
with-umask* create-temp-file temp-file-channel run/collecting* run/port+proc* 
run/port* run/file* run/string* run/strings* run/sexp* run/sexps* port->string 
port->string-list port->sexp-list port->list port-fold char-filter 
string-filter y-or-n? stdio->stdports with-stdio-ports* stdports->stdio 
command-line-arguments arg* arg argv home-directory exec-path-list suspend 
exec/env exec-path/env exec-path exec fork %fork stringify with-cwd with-umask 
with-env with-total-env run/port run/file run/string run/strings run/sexp 
run/sexps with-stdio-ports)
Index: guile/guile-scsh/init.scm
diff -u guile/guile-scsh/init.scm:1.37 guile/guile-scsh/init.scm:1.38
--- guile/guile-scsh/init.scm:1.37      Mon Dec  4 15:27:19 2000
+++ guile/guile-scsh/init.scm   Wed Dec  6 15:10:39 2000
@@ -5,6 +5,7 @@
             (scsh let-opt)
             (scsh loophole)
             (scsh signals)
+            (scsh fdports)
             (scsh syntax-helpers)
             (scsh bitwise)
             (scsh utilities)           ; replaces primitive delete.
@@ -71,6 +72,8 @@
 
             ;; define-simple-syntax generates code that requires
             ;; (scsh alt-syntax).
+            ;; other macros generate code that requires
+            ;; (scsh scsh) and (scsh procobj).
             (scsh syntax)
 
             (scsh fileinfo)
Index: guile/guile-scsh/make-module-list
diff -u guile/guile-scsh/make-module-list:1.3 
guile/guile-scsh/make-module-list:1.4
--- guile/guile-scsh/make-module-list:1.3       Mon Dec  4 15:27:19 2000
+++ guile/guile-scsh/make-module-list   Wed Dec  6 15:10:39 2000
@@ -12,6 +12,7 @@
         let-opt
         loophole
         signals
+        fdports
         syntax-helpers
         bitwise
         utilities
Index: guile/guile-scsh/scsh.scm
diff -u guile/guile-scsh/scsh.scm:1.10 guile/guile-scsh/scsh.scm:1.11
--- guile/guile-scsh/scsh.scm:1.10      Mon Dec  4 15:18:03 2000
+++ guile/guile-scsh/scsh.scm   Wed Dec  6 15:10:39 2000
@@ -35,7 +35,7 @@
        command-line-arguments arg* arg argv
        home-directory exec-path-list suspend
        exec/env exec-path/env exec-path exec
-       fork %fork
+       fork %fork stringify
 )
 (export-syntax with-cwd with-umask with-env with-total-env
               run/port run/file run/string run/strings run/sexp run/sexps
Index: guile/guile-scsh/syntax-helpers.scm
diff -u guile/guile-scsh/syntax-helpers.scm:1.4 
guile/guile-scsh/syntax-helpers.scm:1.5
--- guile/guile-scsh/syntax-helpers.scm:1.4     Sat Dec  2 13:01:40 2000
+++ guile/guile-scsh/syntax-helpers.scm Wed Dec  6 15:10:39 2000
@@ -8,8 +8,10 @@
 (define-module (scsh syntax-helpers)
   :use-module (scsh alt-syntax)
   :use-module (scsh signals)
-  :use-module (ice-9 receive))
-(export transcribe-process-form)
+  :use-module (ice-9 receive)
+  :use-module (scsh utilities)
+)
+(export transcribe-process-form transcribe-extended-process-form)
 
 (define-syntax define-simple-syntax
   (syntax-rules ()
Index: guile/guile-scsh/syntax.scm
diff -u guile/guile-scsh/syntax.scm:1.4 guile/guile-scsh/syntax.scm:1.5
--- guile/guile-scsh/syntax.scm:1.4     Mon Dec  4 15:18:03 2000
+++ guile/guile-scsh/syntax.scm Wed Dec  6 15:10:39 2000
@@ -6,7 +6,6 @@
   :use-module (scsh alt-syntax)
   :use-module (scsh syntax-helpers)
   :use-module (scsh procobj)
-  :use-module (scsh scsh)
 )
 (export-syntax define-simple-syntax exec-epf & run || && run-collecting
               run/port+proc run/port run/strings run/file run/string



reply via email to

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