Changeset 14705 in project for chicken


Ignore:
Timestamp:
05/19/09 14:22:59 (10 years ago)
Author:
felix winkelmann
Message:

chicken-install needs chicken-syntax; bug in case-lambda; tidying up

Location:
chicken/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • chicken/trunk/TODO

    r14656 r14705  
    8484*** check phase separation and module access
    8585**** see "expander" above
     86** complete chicken-base.scm
     87*** syntax reexports
     88*** integrate into build
    8689
    8790** compiler
     
    102105*** Use record-descriptors instead of symbols as 1st slot in structure objects?
    103106**** see Kon's proposal for new record-descriptors in "misc/Chicken Runtime Data Type Proposal"
     107*** deprecate "getenv"
    104108
    105109** syntax-error
  • chicken/trunk/chicken-install.scm

    r14656 r14705  
    2828(require-library srfi-1 posix data-structures utils regex ports extras
    2929                 srfi-13 files)
     30(require-library chicken-syntax)        ; in case an import library reexports chicken syntax
    3031
    3132
     
    321322         (lambda (f)
    322323           (let ((m (string-match rx f)))
    323              (eval `(import ,(string->symbol (cadr m))))))
     324             (handle-exceptions ex
     325                 (print-error-message
     326                  ex (current-error-port)
     327                  (sprintf "Failed to import from `~a'" f))
     328               (eval `(import ,(string->symbol (cadr m)))))))
    324329         files))
    325330      (print "generating database")
  • chicken/trunk/chicken-syntax.scm

    r14653 r14705  
    771771                                                 #t
    772772                                                 `(,(r '>=) ,lvar ,a2) )
    773                                              `(,(r 'eq) ,lvar ,a2) ) )
     773                                             `(,(r 'eq?) ,lvar ,a2) ) )
    774774                                      ,(receive (vars1 vars2)
    775775                                           (split-at! (take vars argc) mincount)
  • chicken/trunk/expand.scm

    r14540 r14705  
    4848
    4949(cond-expand
    50  ((not debugbuild)
     50 (chicken ;(not debugbuild)
    5151  (begin
    5252    (declare
     
    8585        alias) ) )
    8686
     87#+(not debugbuild)
    8788(define (map-se se)
    8889  (map (lambda (a)
     
    15321533  (define (find-reexport name)
    15331534    (let ((a (assq name (##sys#macro-environment))))
    1534       (if (pair? (cdr a))
     1535      (if (and a (pair? (cdr a)))
    15351536          a
    15361537          (##sys#error
  • chicken/trunk/tests/syntax-tests.scm

    r14656 r14705  
    331331;;; incorrect expansion when assigning to something marked '##core#primitive (rev. 14613)
    332332
     333(define x 99)
     334
    333335(module primitive-assign ()
    334336  (import scheme chicken)
     337  (let ((x 100)) (set! x 20) (assert (= x 20)))
    335338  (set! setter 123))
    336339
     340(assert (= x 99))
    337341(assert (= 123 setter))
    338342
Note: See TracChangeset for help on using the changeset viewer.