(load "ll2.scm") ;; JScheme version with lightweight library (for-each (lambda(f) (define o ((/// "\\.c$" "\\.o") f)) (if (or (not (.exists o)) (<= (.lastModified o) (.lastModified f)))) (begin (display {compiling [f] to [o]\n}) (run gcc -c -o ,o ,f))) (files** dir (// "\\.c$")))This version uses RegEx pattern matching(//) and replacement(///), recursive file filtering(file**), and System access(run).
LL2, Saturday 9 November 2002, Tim Hickey/Ken Anderson