~ chicken-core (chicken-5) 33b0880af191c299ad9851c9ce6db0709f1f16db
commit 33b0880af191c299ad9851c9ce6db0709f1f16db Author: Evan Hanson <evhan@foldling.org> AuthorDate: Mon Jan 18 20:59:55 2016 +1300 Commit: Evan Hanson <evhan@foldling.org> CommitDate: Tue Mar 8 22:52:33 2016 +1300 Move formatting procedures to new chicken.format module diff --git a/README b/README index 6a03430e..0e70302d 100644 --- a/README +++ b/README @@ -294,6 +294,7 @@ | | |-- chicken.extras.import.so | | |-- chicken.files.import.so | | |-- chicken.foreign.import.so + | | |-- chicken.format.import.so | | |-- chicken.lolevel.import.so | | |-- chicken.internal.import.so | | |-- chicken.irregex.import.so diff --git a/batch-driver.scm b/batch-driver.scm index a90601ce..87e34d3f 100644 --- a/batch-driver.scm +++ b/batch-driver.scm @@ -44,6 +44,7 @@ chicken.data-structures chicken.extras chicken.files + chicken.format chicken.compiler.support chicken.compiler.compiler-syntax chicken.compiler.core diff --git a/c-backend.scm b/c-backend.scm index 575084cd..4b9d8ffc 100644 --- a/c-backend.scm +++ b/c-backend.scm @@ -40,6 +40,7 @@ (import chicken scheme chicken.bitwise chicken.data-structures + chicken.format chicken.compiler.core chicken.compiler.c-platform chicken.compiler.support diff --git a/c-platform.scm b/c-platform.scm index 757df6a7..b4463603 100644 --- a/c-platform.scm +++ b/c-platform.scm @@ -199,8 +199,8 @@ chicken.data-structures#substring-ci=? chicken.data-structures#any? chicken.data-structures#atom? chicken.data-structures#alist-ref chicken.data-structures#rassoc - chicken.extras#read-string chicken.extras#format - chicken.extras#printf chicken.extras#sprintf chicken.extras#fprintf)) + chicken.extras#read-string chicken.format#format + chicken.format#printf chicken.format#sprintf chicken.format#fprintf)) (set! internal-bindings '(##sys#slot ##sys#setslot ##sys#block-ref ##sys#block-set! diff --git a/chicken-bug.scm b/chicken-bug.scm index d6c9c86f..142353e6 100644 --- a/chicken-bug.scm +++ b/chicken-bug.scm @@ -29,6 +29,7 @@ (import chicken.data-structures chicken.extras chicken.foreign + chicken.format chicken.posix chicken.tcp chicken.utils) diff --git a/chicken-ffi-syntax.scm b/chicken-ffi-syntax.scm index 57187535..7317a92c 100644 --- a/chicken-ffi-syntax.scm +++ b/chicken-ffi-syntax.scm @@ -40,7 +40,8 @@ (no-procedure-checks)) (import chicken.data-structures - chicken.extras) + chicken.extras + chicken.format) (include "mini-srfi-1.scm") diff --git a/chicken-install.scm b/chicken-install.scm index c25003d2..60430ea1 100644 --- a/chicken-install.scm +++ b/chicken-install.scm @@ -36,6 +36,7 @@ chicken.extras chicken.files chicken.foreign + chicken.format chicken.irregex chicken.ports chicken.posix @@ -52,6 +53,7 @@ "chicken.extras.import.so" "chicken.files.import.so" "chicken.foreign.import.so" + "chicken.format.import.so" "chicken.import.so" "chicken.internal.import.so" "chicken.irregex.import.so" diff --git a/chicken-status.scm b/chicken-status.scm index 9b71d44b..6a243097 100644 --- a/chicken-status.scm +++ b/chicken-status.scm @@ -35,6 +35,7 @@ chicken.extras chicken.files chicken.foreign + chicken.format chicken.irregex chicken.ports chicken.posix) diff --git a/chicken-uninstall.scm b/chicken-uninstall.scm index 7da83e6a..70f59372 100644 --- a/chicken-uninstall.scm +++ b/chicken-uninstall.scm @@ -37,6 +37,7 @@ chicken.extras chicken.files chicken.foreign + chicken.format chicken.irregex chicken.ports chicken.posix diff --git a/compiler-syntax.scm b/compiler-syntax.scm index 6c7e81ef..f9ae4197 100644 --- a/compiler-syntax.scm +++ b/compiler-syntax.scm @@ -35,7 +35,7 @@ chicken.compiler.support chicken.compiler.core chicken.data-structures - chicken.extras) + chicken.format) (include "tweaks.scm") (include "mini-srfi-1.scm") @@ -147,11 +147,11 @@ `(,(r 'lambda) (,%tmp) ,(foldr list %tmp (cdr x)))) x)) -(define-internal-compiler-syntax ((chicken.extras#sprintf chicken.extras#format) x r c) +(define-internal-compiler-syntax ((chicken.format#sprintf chicken.format#format) x r c) (display write number->string write-char open-output-string get-output-string) (let* ((out (gensym 'out)) (code (compile-format-string - (if (eq? (car x) 'chicken.extras#sprintf) 'sprintf 'format) + (if (eq? (car x) 'chicken.format#sprintf) 'sprintf 'format) out x (cdr x) r c))) (if code `(,(r 'let) ((,out (,(r 'open-output-string)))) @@ -159,14 +159,14 @@ (,(r 'get-output-string) ,out)) x))) -(define-internal-compiler-syntax ((chicken.extras#fprintf) x r c) +(define-internal-compiler-syntax ((chicken.format#fprintf) x r c) (display write number->string write-char open-output-string get-output-string) (if (>= (length x) 3) (let ((code (compile-format-string 'fprintf (cadr x) x (cddr x) r c))) (or code x)) x)) -(define-internal-compiler-syntax ((chicken.extras#printf) x r c) +(define-internal-compiler-syntax ((chicken.format#printf) x r c) (display write number->string write-char open-output-string get-output-string) (let ((code (compile-format-string 'printf '##sys#standard-output x (cdr x) r c))) (or code x))) @@ -175,7 +175,7 @@ (call/cc (lambda (return) (and (>= (length args) 1) - (memq (symbol-append 'chicken.extras# func) extended-bindings) ; s.a. + (memq (symbol-append 'chicken.format# func) extended-bindings) ; s.a. (or (string? (car args)) (and (list? (car args)) (c (r 'quote) (caar args)) @@ -247,7 +247,7 @@ ((#\?) (let* ([fstr (next)] [lst (next)] ) - (push `(##sys#apply chicken.extras#fprintf ,%out ,fstr ,lst)))) + (push `(##sys#apply chicken.format#fprintf ,%out ,fstr ,lst)))) ((#\~) (push `(##sys#write-char-0 #\~ ,%out))) ((#\% #\N) (push `(##sys#write-char-0 #\newline ,%out))) (else diff --git a/core.scm b/core.scm index c45d324d..7a2f7406 100644 --- a/core.scm +++ b/core.scm @@ -323,7 +323,8 @@ chicken.eval chicken.expand chicken.extras - chicken.foreign) + chicken.foreign + chicken.format) (define (d arg1 . more) (when (##sys#fudge 13) ; debug mode? diff --git a/csc.scm b/csc.scm index 4bc5900c..2afa6f44 100644 --- a/csc.scm +++ b/csc.scm @@ -33,6 +33,7 @@ chicken.data-structures chicken.extras chicken.files + chicken.format chicken.utils) (include "mini-srfi-1.scm") diff --git a/csi.scm b/csi.scm index a240fe4c..61e29d0e 100644 --- a/csi.scm +++ b/csi.scm @@ -56,6 +56,7 @@ EOF (import chicken.data-structures chicken.extras + chicken.format chicken.ports chicken.repl) diff --git a/defaults.make b/defaults.make index b9c1e039..9af0e3d0 100644 --- a/defaults.make +++ b/defaults.make @@ -264,7 +264,7 @@ CHICKEN_PROGRAM_OPTIONS += $(if $(PROFILE_OBJECTS),-profile) PRIMITIVE_IMPORT_LIBRARIES = chicken csi chicken.foreign DYNAMIC_IMPORT_LIBRARIES = setup-api setup-download srfi-4 -DYNAMIC_CHICKEN_IMPORT_LIBRARIES = bitwise posix random +DYNAMIC_CHICKEN_IMPORT_LIBRARIES = bitwise format posix random DYNAMIC_CHICKEN_UNIT_IMPORT_LIBRARIES = data-structures eval repl expand \ continuation extras files internal irregex lolevel ports tcp utils diff --git a/distribution/manifest b/distribution/manifest index 17100d7a..aaec1a15 100644 --- a/distribution/manifest +++ b/distribution/manifest @@ -260,6 +260,8 @@ chicken.files.import.scm chicken.files.import.c chicken.foreign.import.scm chicken.foreign.import.c +chicken.format.import.scm +chicken.format.import.c chicken.internal.import.scm chicken.internal.import.c chicken.irregex.import.scm diff --git a/eval.scm b/eval.scm index ece92a00..2aa6d040 100644 --- a/eval.scm +++ b/eval.scm @@ -82,6 +82,7 @@ (chicken.extras . extras) (chicken.files . files) (chicken.foreign . chicken-ffi-syntax) + (chicken.format . extras) (chicken.internal . internal) (chicken.irregex . irregex) (chicken.lolevel . lolevel) diff --git a/expand.scm b/expand.scm index d4958809..0f67e38f 100644 --- a/expand.scm +++ b/expand.scm @@ -1187,7 +1187,7 @@ (##sys#check-syntax 'cond clause '#(_ 1)) (cond (else? (##sys#warn - (chicken.extras#sprintf "clause following `~S' clause in `cond'" else?) + (chicken.format#sprintf "clause following `~S' clause in `cond'" else?) (chicken.expand#strip-syntax clause)) (expand rclauses else?) '(##core#begin)) diff --git a/extras.scm b/extras.scm index 34e04307..e7f8cb62 100644 --- a/extras.scm +++ b/extras.scm @@ -30,9 +30,9 @@ (uses data-structures)) (module chicken.extras - (format fprintf pp pretty-print pretty-print-width printf + (pp pretty-print pretty-print-width read-buffered read-byte read-file read-line - read-lines read-string read-string! read-token sprintf + read-lines read-string read-string! read-token write-byte write-line write-string) (import scheme chicken) @@ -564,9 +564,16 @@ (define pp pretty-print) +) ; module chicken.extras + ;;; Write simple formatted output: +(module chicken.format + (format fprintf printf sprintf) + +(import scheme chicken) + (define fprintf0 (lambda (loc port msg args) (when port (##sys#check-output-port port #t loc)) diff --git a/lfa2.scm b/lfa2.scm index 9c408c94..1301c199 100644 --- a/lfa2.scm +++ b/lfa2.scm @@ -41,7 +41,8 @@ (import chicken scheme chicken.compiler.support - chicken.extras) + chicken.extras + chicken.format) (include "tweaks") (include "mini-srfi-1.scm") diff --git a/manual/Unit extras b/manual/Unit extras index ec3e9631..bf63656e 100644 --- a/manual/Unit extras +++ b/manual/Unit extras @@ -43,6 +43,7 @@ output of reasonable quality. === Formatted output +These procedures are provided by the {{(chicken format)}} module. ==== printf ==== fprintf diff --git a/modules.scm b/modules.scm index 23c5f16a..b0fe4f78 100644 --- a/modules.scm +++ b/modules.scm @@ -938,6 +938,7 @@ (##sys#register-module-alias 'expand 'chicken.expand) (##sys#register-module-alias 'files 'chicken.files) (##sys#register-module-alias 'foreign 'chicken.foreign) +(##sys#register-module-alias 'format 'chicken.format) (##sys#register-module-alias 'irregex 'chicken.irregex) (##sys#register-module-alias 'lolevel 'chicken.lolevel) (##sys#register-module-alias 'ports 'chicken.ports) diff --git a/rules.make b/rules.make index 6c1938ee..704922c7 100644 --- a/rules.make +++ b/rules.make @@ -519,6 +519,7 @@ $(foreach lib, $(filter-out chicken,$(COMPILER_OBJECTS_1)),\ # special cases for modules not corresponding directly to units $(eval $(call declare-emitted-import-lib-dependency,chicken.posix,$(POSIXFILE))) $(eval $(call declare-emitted-import-lib-dependency,chicken.bitwise,library)) +$(eval $(call declare-emitted-import-lib-dependency,chicken.format,extras)) $(eval $(call declare-emitted-import-lib-dependency,chicken.random,extras)) chicken.c: chicken.scm mini-srfi-1.scm \ @@ -536,7 +537,8 @@ batch-driver.c: batch-driver.scm mini-srfi-1.scm \ chicken.compiler.lfa2.import.scm \ chicken.compiler.c-backend.import.scm \ chicken.compiler.support.import.scm \ - chicken.data-structures.import.scm + chicken.data-structures.import.scm \ + chicken.format.import.scm c-platform.c: c-platform.scm mini-srfi-1.scm \ chicken.compiler.optimizer.import.scm \ chicken.compiler.support.import.scm \ @@ -551,45 +553,52 @@ c-backend.c: c-backend.scm mini-srfi-1.scm \ chicken.compiler.core.import.scm \ chicken.bitwise.import.scm \ chicken.data-structures.import.scm \ - chicken.extras.import.scm + chicken.extras.import.scm \ + chicken.format.import.scm core.c: core.scm mini-srfi-1.scm \ chicken.compiler.scrutinizer.import.scm \ chicken.compiler.support.import.scm \ chicken.data-structures.import.scm \ chicken.eval.import.scm \ chicken.expand.import.scm \ - chicken.extras.import.scm + chicken.extras.import.scm \ + chicken.format.import.scm optimizer.c: optimizer.scm mini-srfi-1.scm \ chicken.compiler.support.import.scm \ chicken.data-structures.import.scm \ chicken.extras.import.scm \ chicken.foreign.import.scm scheduler.c: scheduler.scm \ - chicken.extras.import.scm + chicken.extras.import.scm \ + chicken.format.import.scm scrutinizer.c: scrutinizer.scm mini-srfi-1.scm \ chicken.compiler.support.import.scm \ chicken.data-structures.import.scm \ chicken.expand.import.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ + chicken.format.import.scm \ chicken.ports.import.scm lfa2.c: lfa2.scm mini-srfi-1.scm \ chicken.compiler.support.import.scm \ - chicken.extras.import.scm + chicken.extras.import.scm \ + chicken.format.import.scm compiler-syntax.c: compiler-syntax.scm mini-srfi-1.scm \ chicken.compiler.support.import.scm \ chicken.compiler.core.import.scm \ chicken.data-structures.import.scm \ - chicken.extras.import.scm + chicken.format.import.scm chicken-ffi-syntax.c: chicken-ffi-syntax.scm \ chicken.data-structures.import.scm \ - chicken.extras.import.scm + chicken.extras.import.scm \ + chicken.format.import.scm support.c: support.scm mini-srfi-1.scm \ chicken.data-structures.import.scm \ chicken.expand.import.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.ports.import.scm \ chicken.random.import.scm csc.c: csc.scm \ @@ -598,15 +607,18 @@ csc.c: csc.scm \ chicken.eval.import.scm \ chicken.utils.import.scm \ chicken.files.import.scm \ - chicken.extras.import.scm + chicken.format.import.scm \ + chicken.utils.import.scm csi.c: csi.scm \ chicken.data-structures.import.scm \ chicken.extras.import.scm \ + chicken.format.import.scm \ chicken.ports.import.scm chicken-bug.c: chicken-bug.scm \ chicken.data-structures.import.scm \ chicken.extras.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.tcp.import.scm \ chicken.utils.import.scm chicken-profile.c: chicken-profile.scm \ @@ -616,6 +628,7 @@ chicken-status.c: chicken-status.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.irregex.import.scm \ chicken.ports.import.scm \ chicken.posix.import.scm \ @@ -625,6 +638,7 @@ chicken-install.c: chicken-install.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.irregex.import.scm \ chicken.ports.import.scm \ chicken.posix.import.scm \ @@ -636,6 +650,7 @@ chicken-uninstall.c: chicken-uninstall.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.irregex.import.scm \ chicken.ports.import.scm \ chicken.posix.import.scm \ @@ -646,6 +661,7 @@ setup-api.c: setup-api.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.irregex.import.scm \ chicken.ports.import.scm \ chicken.posix.import.scm \ @@ -655,6 +671,7 @@ setup-download.c: setup-download.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.irregex.import.scm \ chicken.ports.import.scm \ chicken.posix.import.scm \ @@ -704,6 +721,7 @@ utils.c: utils.scm \ chicken.extras.import.scm \ chicken.files.import.scm \ chicken.foreign.import.scm \ + chicken.format.import.scm \ chicken.posix.import.scm \ chicken.irregex.import.scm @@ -726,7 +744,10 @@ expand.c: $(SRCDIR)expand.scm $(SRCDIR)synrules.scm $(SRCDIR)common-declarations modules.c: $(SRCDIR)modules.scm $(SRCDIR)common-declarations.scm $(SRCDIR)mini-srfi-1.scm $(bootstrap-lib) extras.c: $(SRCDIR)extras.scm $(SRCDIR)common-declarations.scm - $(bootstrap-lib) -emit-import-library chicken.extras -emit-import-library chicken.random + $(bootstrap-lib) \ + -emit-import-library chicken.extras \ + -emit-import-library chicken.format \ + -emit-import-library chicken.random posixunix.c: $(SRCDIR)posixunix.scm $(SRCDIR)posix-common.scm $(SRCDIR)common-declarations.scm $(bootstrap-lib) -emit-import-library chicken.posix posixwin.c: $(SRCDIR)posixwin.scm $(SRCDIR)posix-common.scm $(SRCDIR)common-declarations.scm diff --git a/scheduler.scm b/scheduler.scm index 1245182e..43a6525d 100644 --- a/scheduler.scm +++ b/scheduler.scm @@ -133,7 +133,8 @@ C_inline void C_fdset_add(int fd, int input, int output) { EOF ) ) -(import chicken.extras) +(import chicken.extras + chicken.format) (include "common-declarations.scm") diff --git a/scrutinizer.scm b/scrutinizer.scm index 6589ed5c..aa4d1dce 100644 --- a/scrutinizer.scm +++ b/scrutinizer.scm @@ -37,6 +37,7 @@ chicken.data-structures chicken.expand chicken.extras + chicken.format chicken.files chicken.ports) diff --git a/setup-api.scm b/setup-api.scm index b7704168..7250db59 100644 --- a/setup-api.scm +++ b/setup-api.scm @@ -70,6 +70,7 @@ chicken.extras chicken.files chicken.foreign + chicken.format chicken.ports chicken.posix chicken.irregex diff --git a/setup-download.scm b/setup-download.scm index 73e751c0..21836e55 100644 --- a/setup-download.scm +++ b/setup-download.scm @@ -42,6 +42,7 @@ chicken.extras chicken.files chicken.foreign + chicken.format chicken.irregex chicken.posix chicken.tcp diff --git a/support.scm b/support.scm index 0ea66202..2b57ec97 100644 --- a/support.scm +++ b/support.scm @@ -81,6 +81,7 @@ chicken.extras chicken.files chicken.foreign + chicken.format chicken.ports chicken.random) diff --git a/tests/apply-test.scm b/tests/apply-test.scm index 3ec491c5..1ada5814 100644 --- a/tests/apply-test.scm +++ b/tests/apply-test.scm @@ -1,4 +1,4 @@ -(require-extension extras) +(require-extension format) (define (list-tabulate n proc) (let loop ((i 0)) diff --git a/tests/environment-tests.scm b/tests/environment-tests.scm index 0f1444c9..49f53aec 100644 --- a/tests/environment-tests.scm +++ b/tests/environment-tests.scm @@ -41,13 +41,13 @@ (define foo-env (module-environment 'foo)) (define csi-env (module-environment 'csi)) -(define extras-env (module-environment 'extras)) +(define format-env (module-environment 'format)) (test-equal (eval '(bar) foo-env) 99) (test-error (eval 'baz foo-env)) (test-equal (eval '(editor-command) csi-env) #f) (test-error (eval 'baz csi-env)) -(test-equal (eval '(format "~a" 1) extras-env) "1") -(test-error (eval 'baz extras-env)) +(test-equal (eval '(format "~a" 1) format-env) "1") +(test-error (eval 'baz format-env)) (test-end) diff --git a/tests/loopy-test.scm b/tests/loopy-test.scm index 003d8103..81e49b0f 100644 --- a/tests/loopy-test.scm +++ b/tests/loopy-test.scm @@ -1,4 +1,4 @@ -(use (only extras printf)) +(use (only format printf)) (load-relative "loopy-loop.scm") (load-relative "matchable.scm") diff --git a/tests/numbers-string-conversion-tests.scm b/tests/numbers-string-conversion-tests.scm index 5d38c239..3c647710 100644 --- a/tests/numbers-string-conversion-tests.scm +++ b/tests/numbers-string-conversion-tests.scm @@ -21,7 +21,7 @@ ;; (load "~~/lib/syntax-case") and then load this file, or use gsi's -:s switch ;;; -(use extras) ; Chicken w/ numbers +(use format) ; Chicken w/ numbers ;(use-syntax (ice-9 syncase)) ; Guile ;; Set this to #f if the Scheme has no compnums at all, 'inexact if it only diff --git a/tests/numbers-test.scm b/tests/numbers-test.scm index 527f809e..7631fb34 100644 --- a/tests/numbers-test.scm +++ b/tests/numbers-test.scm @@ -1,7 +1,7 @@ ;;;; numbers-test.scm (include "test.scm") -(use bitwise extras posix) +(use bitwise extras format posix) ;; The default "comparator" doesn't know how to deal with extended number types (current-test-comparator diff --git a/tests/port-tests.scm b/tests/port-tests.scm index 1c548e14..8240c148 100644 --- a/tests/port-tests.scm +++ b/tests/port-tests.scm @@ -1,4 +1,4 @@ -(require-extension data-structures extras files ports posix srfi-4 tcp utils) +(require-extension data-structures extras format files ports posix srfi-4 tcp utils) (include "test.scm") (test-begin) diff --git a/tests/runtests.sh b/tests/runtests.sh index fab020b2..3be7a36a 100755 --- a/tests/runtests.sh +++ b/tests/runtests.sh @@ -45,6 +45,7 @@ for x in \ chicken.extras.import.so \ chicken.files.import.so \ chicken.foreign.import.so \ + chicken.format.import.so \ chicken.internal.import.so \ chicken.irregex.import.so \ chicken.lolevel.import.so \ diff --git a/tests/srfi-45-tests.scm b/tests/srfi-45-tests.scm index 9ca20623..ae14af7c 100644 --- a/tests/srfi-45-tests.scm +++ b/tests/srfi-45-tests.scm @@ -1,7 +1,7 @@ ;;; Tests adapted from SRFI 45 (for "lazy" -> "delay-force"). ;;; That SRFI Copyright (C) André van Tonder (2003). -(use (only extras printf) +(use (only format printf) (only ports with-output-to-string)) (define *errors* 0) diff --git a/tests/test-irregex.scm b/tests/test-irregex.scm index 5496ed75..a516ebb7 100644 --- a/tests/test-irregex.scm +++ b/tests/test-irregex.scm @@ -1,7 +1,7 @@ ;;;: test-irregex.scm -(use data-structures extras irregex ports) +(use data-structures extras format irregex ports) (include "test.scm") diff --git a/types.db b/types.db index b751058e..4ab602a5 100644 --- a/types.db +++ b/types.db @@ -1519,12 +1519,9 @@ ;; extras -(chicken.extras#format (procedure chicken.extras#format (#!rest) *)) -(chicken.extras#fprintf (#(procedure #:enforce) chicken.extras#fprintf (output-port string #!rest) undefined)) (chicken.extras#pp (#(procedure #:enforce) chicken.extras#pp (* #!optional output-port) undefined)) (chicken.extras#pretty-print (#(procedure #:enforce) chicken.extras#pretty-print (* #!optional output-port) undefined)) (chicken.extras#pretty-print-width (#(procedure #:clean) chicken.extras#pretty-print-width (#!optional fixnum) *)) -(chicken.extras#printf (#(procedure #:enforce) chicken.extras#printf (string #!rest) undefined)) (chicken.extras#read-buffered (#(procedure #:enforce) chicken.extras#read-buffered (#!optional input-port) string)) (chicken.extras#read-byte (#(procedure #:enforce) chicken.extras#read-byte (#!optional input-port) *)) (chicken.extras#read-file (#(procedure #:enforce) chicken.extras#read-file (#!optional (or input-port string) (procedure (input-port) *) fixnum) list)) @@ -1533,11 +1530,15 @@ (chicken.extras#read-string (#(procedure #:enforce) chicken.extras#read-string (#!optional (or fixnum false) input-port) string)) (chicken.extras#read-string! (#(procedure #:enforce) chicken.extras#read-string! ((or fixnum false) string #!optional input-port fixnum) fixnum)) (chicken.extras#read-token (#(procedure #:enforce) chicken.extras#read-token ((procedure (char) *) #!optional input-port) string)) -(chicken.extras#sprintf (#(procedure #:enforce #:foldable) chicken.extras#sprintf (string #!rest) string)) (chicken.extras#write-byte (#(procedure #:enforce) chicken.extras#write-byte (fixnum #!optional output-port) undefined)) (chicken.extras#write-line (#(procedure #:enforce) chicken.extras#write-line (string #!optional output-port) undefined)) (chicken.extras#write-string (#(procedure #:enforce) chicken.extras#write-string (string #!optional * output-port) undefined)) +(chicken.format#format (procedure chicken.format#format (#!rest) *)) +(chicken.format#fprintf (#(procedure #:enforce) chicken.format#fprintf (output-port string #!rest) undefined)) +(chicken.format#printf (#(procedure #:enforce) chicken.format#printf (string #!rest) undefined)) +(chicken.format#sprintf (#(procedure #:enforce #:foldable) chicken.format#sprintf (string #!rest) string)) + ;; random (chicken.random#random (#(procedure #:clean #:enforce) chicken.random#random (fixnum) fixnum)) diff --git a/utils.scm b/utils.scm index 985296a3..8c015cab 100644 --- a/utils.scm +++ b/utils.scm @@ -44,6 +44,7 @@ chicken.extras chicken.files chicken.foreign + chicken.format chicken.posix chicken.irregex)Trap