From 60b7acd56c60be0480f3a99af26f938f47aba5ac Mon Sep 17 00:00:00 2001 From: Eli Barzilay Date: Tue, 17 Oct 2006 03:42:49 +0000 Subject: [PATCH] make srfi-13 reuse string builtins svn: r4617 --- collects/srfi/13.ss | 15 +++++++++------ collects/srfi/13/string.ss | 7 ++++++- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/collects/srfi/13.ss b/collects/srfi/13.ss index 5b4c3161e0..f5c3ed6aa2 100644 --- a/collects/srfi/13.ss +++ b/collects/srfi/13.ss @@ -1,10 +1,13 @@ ;; module loader for SRFI-13 +(module |13| mzscheme + (require (lib "string.ss" "srfi" "13")) + (provide (all-from (lib "string.ss" "srfi" "13")))) + +#; ; re-provides built-ins now (module |13| mzscheme (require (lib "string.ss" "srfi" "13")) (provide (all-from-except (lib "string.ss" "srfi" "13") - s:string-upcase s:string-downcase s:string-titlecase) - (rename s:string-upcase string-upcase) - (rename s:string-downcase string-downcase) - (rename s:string-titlecase string-titlecase))) - - + s:string-upcase s:string-downcase s:string-titlecase) + (rename s:string-upcase string-upcase) + (rename s:string-downcase string-downcase) + (rename s:string-titlecase string-titlecase))) diff --git a/collects/srfi/13/string.ss b/collects/srfi/13/string.ss index c99c79c5e0..2320b8c596 100644 --- a/collects/srfi/13/string.ss +++ b/collects/srfi/13/string.ss @@ -99,7 +99,9 @@ string-compare string-compare-ci string= string< string> string<= string>= string<> string-ci= string-ci< string-ci> string-ci<= string-ci>= string-ci<> - s:string-downcase s:string-upcase s:string-titlecase + ;; use built-in versions + ;; s:string-downcase s:string-upcase s:string-titlecase + string-downcase string-upcase string-titlecase string-downcase! string-upcase! string-titlecase! string-take string-take-right string-drop string-drop-right @@ -945,6 +947,7 @@ ;; Capitalize every contiguous alpha sequence: capitalise ;; first char, lowercase rest. + #; ; use built-in version (define (s:string-upcase s . maybe-start+end) (let-string-start+end (start end) 'string-upcase s maybe-start+end (%string-map char-upcase s start end))) @@ -953,6 +956,7 @@ (let-string-start+end (start end) 'string-upcase! s maybe-start+end (%string-map! char-upcase s start end))) + #; ; use built-in version (define (s:string-downcase s . maybe-start+end) (let-string-start+end (start end) 'string-downcase s maybe-start+end (%string-map char-downcase s start end))) @@ -980,6 +984,7 @@ (let-string-start+end (start end) 'string-titlecase! s maybe-start+end (%string-titlecase! s start end))) + #; ; use built-in version (define (s:string-titlecase s . maybe-start+end) (let-string-start+end (start end) 'string-titlecase! s maybe-start+end (let ((ans (substring s start end)))