Changeset 11690 in project


Ignore:
Timestamp:
08/21/08 03:09:39 (13 years ago)
Author:
Ivan Raikov
Message:

Renamed core to oru.

File:
1 moved

Legend:

Unmodified
Added
Removed
  • release/3/oru/oru.scm

    r11678 r11690  
    174174
    175175
    176   (define (enumdeps expr ax)
    177     (match expr
    178            ((s . es)   (if (symbol? s) (fold enumdeps ax es) (fold enumdeps ax (cons s es))))
    179            (id         (if (symbol? id) (cons id ax) ax))))
     176  (define (enumdeps expr)
     177    (let loop ((expr expr) (ax (list)) (lbs (list)))
     178      (match expr
     179             (('let bs e)  (let let-loop ((bs bs) (ax ax) (lbs lbs))
     180                             (if (null? bs) (loop e ax lbs)
     181                                 (let ((x   (first  (car bs)))
     182                                       (ex  (second (car bs))))
     183                                   (let* ((lbs1  (cons x lbs))
     184                                          (ax1   (loop ex ax lbs)))
     185                                     (let-loop (cdr bs) ax1 lbs1))))))
     186
     187             ((s . es)     (if (symbol? s) (fold (lambda (e ax) (loop e ax lbs)) ax es)
     188                               (fold (lambda (e ax) (loop e ax lbs)) ax (cons s es))))
     189             (id           (if (and (symbol? id) (not (member id lbs))) (cons id ax) ax)))))
    180190
    181191
     
    567577
    568578  (define (eval-const oru-env expr)
    569     (exact->inexact (eval (normalize-expr expr) (make-const-env oru-env))))
     579    (let ((expr1 (normalize-expr expr)))
     580      (exact->inexact (eval expr1  (make-const-env oru-env)))))
    570581
    571582
     
    644655                                                            (and (let ((x (environment-ref oru-env sym)))
    645656                                                                   (isdep? x)))))
    646                                                       (enumdeps rhs (list))))
     657                                                      (enumdeps rhs)))
    647658                                          (edges (map (lambda (d) (cons d qsym)) deps)))
    648659                                   (if edges (append edges ax) ax))
Note: See TracChangeset for help on using the changeset viewer.