diff options
Diffstat (limited to 'scsh.init')
-rw-r--r-- | scsh.init | 26 |
1 files changed, 16 insertions, 10 deletions
@@ -81,8 +81,7 @@ ;@ (define sub-vicinity (case (software-type) - ((vms) (lambda - (vic name) + ((vms) (lambda (vic name) (let ((l (string-length vic))) (if (or (zero? (string-length vic)) (not (char=? #\] (string-ref vic (- l 1))))) @@ -123,6 +122,7 @@ ;(SLIB:LOAD-COMPILED "filename") vicinity srfi-59 + srfi-96 ;; Scheme report features ;; R5RS-compliant implementations should provide all 9 features. @@ -166,11 +166,11 @@ ;; Other common features -;;; srfi ;srfi-0, COND-EXPAND finds all srfi-* +;;; srfi-0 ;srfi-0, COND-EXPAND finds all srfi-* ;;; sicp ;runs code from Structure and ;Interpretation of Computer ;Programs by Abelson and Sussman. -;;; defmacro ;has Common Lisp DEFMACRO + defmacro ;has Common Lisp DEFMACRO ;;; record ;has user defined data structures ;;; string-port ;has CALL-WITH-INPUT-STRING and ;CALL-WITH-OUTPUT-STRING @@ -183,13 +183,16 @@ ;;; ed ;(ED) is editor ;;; system ;posix (system <string>) getenv ;posix (getenv <string>) -;;; program-arguments ;returns list of strings (argv) + program-arguments ;returns list of strings (argv) ;;; current-time ;returns time in seconds since 1/1/1970 ;; Implementation Specific features )) +;;@ http://practical-scheme.net/wiliki/schemexref.cgi?command-line +(define program-arguments command-line) + ;;@ (FILE-POSITION <port> . <k>) (define (file-position port . args) (if (null? args) @@ -272,10 +275,6 @@ (define (slib:eval form) (eval form (interaction-environment))) -;;; If your implementation provides R4RS macros: -(define macro:eval slib:eval) -(define macro:load load) - (define *defmacros* (list (cons 'defmacro (lambda (name parms . body) @@ -313,7 +312,6 @@ (define (defmacro:load pathname) (slib:eval-load pathname defmacro:eval)) -;; slib:eval-load definition moved to "require.scm" (define slib:warn (lambda args @@ -369,6 +367,14 @@ ;;; At this point SLIB:LOAD must be able to load SLIB files. (define slib:load slib:load-source) +;;; If your implementation provides R4RS macros: +(define macro:eval slib:eval) +(define macro:load slib:load-source) + +;;; If your implementation provides syntax-case macros: +;;(define syncase:eval slib:eval) +;;(define syncase:load slib:load-source) + ;;; Scheme48 complains that these are not defined (even though they ;;; won't be called until they are). (define synclo:load #f) |