Changeset 13991 in project


Ignore:
Timestamp:
03/30/09 02:10:13 (11 years ago)
Author:
Ivan Raikov
Message:

Version 3.5.4

Location:
chicken/branches/chicken-3
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • chicken/branches/chicken-3/README

    r13805 r13991  
    33  (c)2000-2008 Felix L. Winkelmann
    44
    5   version 3.5.3
     5  version 3.5.4
    66
    77
  • chicken/branches/chicken-3/buildversion

    r13805 r13991  
    1 3.5.3
     13.5.4
  • chicken/branches/chicken-3/manual/The User's Manual

    r13805 r13991  
    33== The User's Manual
    44
    5 This is the user's manual for the Chicken Scheme compiler, version 3.5.3
     5This is the user's manual for the Chicken Scheme compiler, version 3.5.4
    66
    77; [[Getting started]] : What is CHICKEN and how do I use it?
  • chicken/branches/chicken-3/regex.scm

    r13170 r13991  
    112112
    113113(define (string-match rx str . rest)
     114  (print "begin string-match")
    114115  (let ((rx (unregexp rx)))
    115116    (and-let* ((m (irregex-match rx str)))
     
    117118                 (res '()))
    118119        (if (fx<= i 0)
    119             (cons str res)
     120            (begin
     121              (print "end string-match")
     122              (cons str res)
     123              )
    120124            (loop (fx- i 1) (cons (irregex-match-substring m i) res)))))))
    121125
    122126(define (string-match-positions rx str . rest)
     127  (print "begin string-match-positions")
    123128  (let ((rx (unregexp rx)))
    124129    (and-let* ((m (irregex-match rx str)))
     
    126131                 (res '()))
    127132        (if (fx<= i 0)
    128             (cons (list 0 (string-length str)) res)
     133            (begin
     134              (print "end string-match-positions")
     135              (cons (list 0 (string-length str)) res)
     136              )
    129137            (loop (fx- i 1) (cons (list (irregex-match-start-index m i)
    130138                                        (irregex-match-end-index m i))
     
    132140
    133141(define (string-search rx str #!optional (start 0) (range (string-length str)))
     142  (print "begin string-search")
    134143  (let ((rx (unregexp rx)))
    135144    (and-let* ((n (string-length str))
     
    138147                 (res '()))
    139148        (if (fx< i 0)
    140             res
     149            (begin
     150              (print "end string-search")
     151              res)
    141152            (loop (fx- i 1) (cons (irregex-match-substring m i) res)))))))
    142153
    143154(define (string-search-positions rx str #!optional (start 0) (range (string-length str)))
     155  (print "begin string-search-positions")
    144156  (let ((rx (unregexp rx)))
    145157    (and-let* ((n (string-length str))
     
    148160                 (res '()))
    149161        (if (fx< i 0)
    150             res
     162            (begin
     163              (print "end string-search-positions")
     164              res)
    151165            (loop (fx- i 1) (cons (list (irregex-match-start-index m i)
    152166                                        (irregex-match-end-index m i))
     
    162176        [string-search-positions string-search-positions] )
    163177    (lambda (rgxp str . mode-and-start)
     178      (print "begin string-split-fields")
    164179      (##sys#check-string str 'string-split-fields)
    165180      (let* ([argc (length mode-and-start)]
     
    194209                          (loop (cons (fetch start (fx+ from 1) (fx+ to 2)) ms) (fx+ to 1)) )
    195210                      (loop (cons (fetch start from to) ms) to) ) )
    196                 (fini ms start) ) ) ) ) ) ) )
     211                (begin
     212                  (print "end string-split-fields")
     213                  (fini ms start) ) ) ) ) ) ) ))
    197214
    198215
     
    205222        [string-search-positions string-search-positions] )
    206223    (lambda (regex subst string . flag)
     224      (print "begin string-substitute")
    207225      (##sys#check-string subst 'string-substitute)
    208226      (let* ([which (if (pair? flag) (car flag) 1)]
     
    248266                            (loop upto (fx+ count 1)) ) ) ) ]
    249267                  [else
     268                   (print "end string-substitute")
     269
    250270                   (push (substring string index (##sys#size string)))
    251271                   (##sys#fragments->string total (reverse result)) ] ) ) ) ) ) ) )
     
    254274  (let ([string-substitute string-substitute])
    255275    (lambda (str smap . mode)
     276      (print "begin string-substitute*")
     277
    256278      (##sys#check-string str 'string-substitute*)
    257279      (##sys#check-list smap 'string-substitute*)
     
    259281        (let loop ((str str) (smap smap))
    260282          (if (null? smap)
    261               str
     283              (begin
     284                (print "end string-substitute*")
     285                str)
    262286              (let ((sm (car smap)))
    263287                (loop (string-substitute (car sm) (cdr sm) str mode)
     
    270294(define (glob? str)
    271295  (##sys#check-string str 'glob?)
     296  (print "begin glob?")
    272297  (let loop ([idx (fx- (string-length str) 1)])
    273298    (and (fx<= 0 idx)
     
    275300           [(#\* #\] #\?)
    276301             (or (fx= 0 idx)
    277                  (not (char=? #\\ (string-ref str (fx- idx 1))))
     302                 (begin
     303                   (print "end glob?")
     304                   (not (char=? #\\ (string-ref str (fx- idx 1)))))
    278305                 (loop (fx- idx 2)))]
    279306           [else
     
    284311        [string->list string->list] )
    285312    (lambda (s)
     313      (print "begin glob->regexp")
    286314      (##sys#check-string s 'glob->regexp)
    287315      (list->string
    288316       (let loop ((cs (string->list s)))
    289317         (if (null? cs)
    290              '()
     318             (begin
     319               (print "end glob->regexp")
     320               '())
    291321             (let ([c (car cs)]
    292322                   [rest (cdr cs)] )
     
    319349  (let ([string-search string-search])
    320350    (lambda (rgxp lst)
     351      (print "begin grep")
    321352      (##sys#check-list lst 'grep)
    322353      (let loop ([lst lst])
    323354        (if (null? lst)
    324             '()
     355            (begin
     356              (print "end grep")
     357              '())
    325358            (let ([x (car lst)]
    326359                  [r (cdr lst)] )
     
    336369        [get-output-string get-output-string] )
    337370    (lambda (str)
     371      (print "begin regexp-escape")
    338372      (##sys#check-string str 'regexp-escape)
    339373      (let ([out (open-output-string)]
    340374            [len (##sys#size str)] )
    341375        (let loop ([i 0])
    342           (cond [(fx>= i len) (get-output-string out)]
     376          (cond [(fx>= i len)
     377                 (print "end regexp-escape")
     378                 (get-output-string out)]
    343379                [(memq (##core#inline "C_subchar" str i)
    344380                       '(#\. #\\ #\? #\* #\+ #\^ #\$ #\( #\) #\[ #\] #\| #\{ #\}))
  • chicken/branches/chicken-3/version.scm

    r13805 r13991  
    1 (define-constant +build-version+ "3.5.3")
     1(define-constant +build-version+ "3.5.4")
Note: See TracChangeset for help on using the changeset viewer.