text.ss
#lang scheme/base
;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; BASE.plt - common routines that are shared by all other bzlib modules
;;
;; in a way, base.plt is the most fundamental module of the whole bzlib stack
;; and as such it also is the lowest level code.  We are not likely to
;; fix the code any time soon, and hence any of the functions here are
;; explicitly likely to be obsoleted or moved elsewhere.
;;
;; Proceed with caution.
;;
;;
;; Bonzai Lab, LLC.  All rights reserved.
;;
;; Licensed under LGPL.
;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; text.ss - basic "text" (or string) service.
;; yc 9/8/2009 - first version
(require "base.ss" scheme/string)

(define (stringify* arg . args)
  (apply stringify (cons arg args)))

(define (stringify args)
  (apply format (string-join (build-list (length args)
                                         (lambda (n) "~a"))
                             "")
         args))

(provide/contract 
 (stringify* (->* (any/c)
                 ()
                 #:rest (listof any/c)
                 string?))
 (stringify (-> (listof any/c) string?))
 )

(provide (all-from-out scheme/string))