diff options
| author | Steve Langasek <vorlon@debian.org> | 2005-01-10 08:53:33 +0000 | 
|---|---|---|
| committer | Bryan Newbold <bnewbold@robocracy.org> | 2017-02-20 00:05:30 -0800 | 
| commit | e33f9eb9cf5cc29c36ce2aa7e10cd0f37ae0cc8e (patch) | |
| tree | abbf06041619e445f9d0b772b0d58132009d8234 /chez.init | |
| parent | f559c149c83da84d0b1c285f0298c84aec564af9 (diff) | |
| parent | 8466d8cfa486fb30d1755c4261b781135083787b (diff) | |
| download | slib-e33f9eb9cf5cc29c36ce2aa7e10cd0f37ae0cc8e.tar.gz slib-e33f9eb9cf5cc29c36ce2aa7e10cd0f37ae0cc8e.zip  | |
Import Debian changes 3a1-4.2debian/3a1-4.2
slib (3a1-4.2) unstable; urgency=low
  * Non-maintainer upload.
  * Add guile.init.local for use within the build dir, since otherwise we
    have an (earlier unnoticed) circular build-dep due to a difference
    between scm and guile.
slib (3a1-4.1) unstable; urgency=low
  * Non-maintainer upload.
  * Build-depend on guile-1.6 instead of scm, since the new version of
    scm is wedged in unstable (closes: #281809).
slib (3a1-4) unstable; urgency=low
  * Also check for expected creation on slibcat. (Closes: #240096)
slib (3a1-3) unstable; urgency=low
  * Also check for /usr/share/guile/1.6/slib before installing for guile
    1.6. (Closes: #239267)
slib (3a1-2) unstable; urgency=low
  * Add format.scm back into slib until gnucash stops using it.
  * Call guile-1.6 new-catalog (Closes: #238231)
slib (3a1-1) unstable; urgency=low
  * New upstream release
  * Remove Info section from doc-base file (Closes: #186950)
  * Remove period from end of description (linda, lintian)
  * html gen fixed upstream (Closes: #111778)
slib (2d4-2) unstable; urgency=low
  * Fix url for upstream source (Closes: #144981)
  * Fix typo in slib.texi (enquque->enqueue) (Closes: #147475)
  * Add build depends.
slib (2d4-1) unstable; urgency=low
  * New upstream.
slib (2d3-1) unstable; urgency=low
  * New upstream.
  * Remove texi2html call in debian/rules.  Now done upstream.  Add make
    html instead.
  * Changes to rules and doc-base to conform to upstream html gen
  * Clean up upstream makefile to make sure it cleans up after itself.
Diffstat (limited to 'chez.init')
| -rw-r--r-- | chez.init | 75 | 
1 files changed, 48 insertions, 27 deletions
@@ -8,36 +8,30 @@  ;;; (software-type) should be set to the generic operating system type.  ;;; UNIX, VMS, MACOS, AMIGA and MS-DOS are supported. -  (define (software-type) 'UNIX)  ;;; (scheme-implementation-type) should return the name of the scheme  ;;; implementation loading this file. -  (define (scheme-implementation-type) 'chez)  ;;; (scheme-implementation-home-page) should return a (string) URI  ;;; (Uniform Resource Identifier) for this scheme implementation's home  ;;; page; or false if there isn't one. -  (define (scheme-implementation-home-page) -  "http://www.cs.indiana.edu/chezscheme/") +  "http://www.scheme.com/")  ;;; (scheme-implementation-version) should return a string describing  ;;; the version the scheme implementation loading this file. -  (define (scheme-implementation-version) "6.0a")  ;;; (implementation-vicinity) should be defined to be the pathname of  ;;; the directory where any auxillary files to your Scheme  ;;; implementation reside. -  (define implementation-vicinity    (lambda () "/usr/unsup/scheme/chez/"))  ;;; (library-vicinity) should be defined to be the pathname of the  ;;; directory where files of Scheme library functions reside. -  (define library-vicinity    (let ((library-path  	 (or @@ -55,14 +49,18 @@  ;;; (home-vicinity) should return the vicinity of the user's HOME  ;;; directory, the directory which typically contains files which  ;;; customize a computer environment for a user. - -(define home-vicinity -  (let ((home-path (getenv "HOME"))) -    (lambda () home-path))) +(define (home-vicinity) +  (let ((home (getenv "HOME"))) +    (and home +	 (case (software-type) +	   ((UNIX COHERENT MS-DOS)	;V7 unix has a / on HOME +	    (if (eqv? #\/ (string-ref home (+ -1 (string-length home)))) +		home +		(string-append home "/"))) +	   (else home)))))  ;;; *FEATURES* should be set to a list of symbols describing features  ;;; of this implementation.  Suggestions for features are: -  (define *features*        '(  	source				;can load scheme source files @@ -72,7 +70,7 @@  		       ;; Scheme report features -	rev5-report			;conforms to +	r5rs				;conforms to  	eval				;R5RS two-argument eval  	values				;R5RS multiple values  	dynamic-wind			;R5RS dynamic-wind @@ -86,11 +84,11 @@  					;STRING-FILL!, LIST->VECTOR,  					;VECTOR->LIST, and VECTOR-FILL! -	rev4-report			;conforms to +	r4rs				;conforms to  	ieee-p1178			;conforms to -	rev3-report			;conforms to +	r3rs				;conforms to  ;	rev2-procedures			;SUBSTRING-MOVE-LEFT!,  					;SUBSTRING-MOVE-RIGHT!, @@ -101,7 +99,7 @@  	multiarg/and-			;/ and - can take more than 2 args.  	with-file			;has WITH-INPUT-FROM-FILE and -					;WITH-OUTPUT-FROM-FILE +					;WITH-OUTPUT-TO-FILE  	transcript			;TRANSCRIPT-ON and TRANSCRIPT-OFF  ;	ieee-floating-point		;conforms to IEEE Standard 754-1985  					;IEEE Standard for Binary @@ -132,13 +130,12 @@  		  ;; Implementation Specific features +;;;	random				;Not the same as SLIB random  	fluid-let -	random  	))  ;;; (OUTPUT-PORT-WIDTH <port>) returns the number of graphic characters  ;;; that can reliably be displayed on one line of the standard output port. -  (define output-port-width    (lambda arg      (let ((env-width-string (getenv "COLUMNS"))) @@ -154,7 +151,6 @@  ;;; (OUTPUT-PORT-HEIGHT <port>) returns the number of lines of text that  ;;; can reliably be displayed simultaneously in the standard output port. -  (define output-port-height    (lambda arg      (let ((env-height-string (getenv "LINES"))) @@ -189,6 +185,37 @@  ;; port to be transferred all the way out to its ultimate destination.  (define force-output flush-output-port) +(define (make-exchanger obj) +  (lambda (rep) (let ((old obj)) (set! obj rep) old))) +(define (open-file filename modes) +  (case modes +    ((r rb) (open-input-file filename)) +    ((w wb) (open-output-file filename)) +    (else (slib:error 'open-file 'mode? modes)))) +(define (port? obj) (or (input-port? port) (output-port? port))) +(define (call-with-open-ports . ports) +  (define proc (car ports)) +  (cond ((procedure? proc) (set! ports (cdr ports))) +	(else (set! ports (reverse ports)) +	      (set! proc (car ports)) +	      (set! ports (reverse (cdr ports))))) +  (let ((ans (apply proc ports))) +    (for-each close-port ports) +    ans)) +(define (close-port port) +  (cond ((input-port? port) +	 (close-input-port port) +	 (if (output-port? port) (close-output-port port))) +	((output-port? port) (close-output-port port)) +	(else (slib:error 'close-port 'port? port)))) + +(define (browse-url url) +  (define (try cmd end) (zero? (system (string-append cmd url end)))) +  (or (try "netscape-remote -remote 'openURL(" ")'") +      (try "netscape -remote 'openURL(" ")'") +      (try "netscape '" "'&") +      (try "netscape '" "'"))) +  ;;; "rationalize" adjunct procedures.  (define (find-ratio x e)    (let ((rat (rationalize x e))) @@ -218,7 +245,7 @@      (let ((cep (current-error-port)))        (if (provided? 'trace) (print-call-stack cep))        (display "Error: " cep) -      (for-each (lambda (x) (display x cep)) args) +      (for-each (lambda (x) (display #\  cep) (write x cep)) args)        (error #f ""))))  ;;; define these as appropriate for your system. @@ -269,17 +296,14 @@  ;;; (SLIB:LOAD-SOURCE "foo") should load "foo.scm" or with whatever  ;;; suffix all the module files in SLIB have.  See feature 'SOURCE. -  (define (slib:load-source f) (load (string-append f ".scm")))  ;;; (SLIB:LOAD-COMPILED "foo") should load the file that was produced  ;;; by compiling "foo.scm" if this implementation can compile files.  ;;; See feature 'COMPILED. -  (define slib:load-compiled load)  ;;; At this point SLIB:LOAD must be able to load SLIB files. -  (define slib:load slib:load-source)  ;;; The following make procedures in Chez Scheme compatible with @@ -309,7 +333,6 @@  ;;; Chez's (FORMAT F . A) corresponds to SLIB's (FORMAT #F F . A)  ;;; See the FORMAT feature. -  (define chez:format format)  (define format @@ -325,7 +348,6 @@  ;;; CALL-WITH-INPUT-STRING and CALL-WITH-OUTPUT-STRING are the string  ;;; port versions of CALL-WITH-INPUT-FILE and CALL-WITH-OUTPUT-FILE.  ;;; See the STRING-PORT feature. -  (define call-with-output-string    (lambda (f)      (let ((outsp (open-output-string))) @@ -397,10 +419,9 @@      (let ((cep (current-error-port)))        (if (provided? 'trace) (print-call-stack cep))        (display "Warn: " cep) -      (for-each (lambda (x) (display x cep)) args)))) +      (for-each (lambda (x) (display #\  cep) (write x cep)) args))))  ;;; Load the REQUIRE package. -  (slib:load (in-vicinity (library-vicinity) "require"))  ;; end of chez.init  | 
