Added temporary test code

This commit is contained in:
Justin Ethier 2016-05-03 23:02:51 -04:00
parent 04f671efe0
commit f3f86b8d15

View file

@ -1,16 +1,51 @@
;; Temporary file to test changes to the optimization library ;; Temporary file to test changes to the optimization library
(import (optimize-cps) ;(import (optimize-cps)
(scheme write) ; (scheme write)
(scheme base)) ; (scheme base))
;
;(adb:init!)
;(adb:set! 'v (adb:make-var))
;
;(let ((v (adb:get 'v)))
; (adbv:set-global! v #t)
; (adbv:set-defined-by! v 1)
;
; (display v)
; (newline)
; (display (adbv:defined-by v))
; (newline))
(adb:init!) (import (scheme cyclone libraries) (scheme write) (scheme base))
(adb:set! 'v (adb:make-var))
(let ((v (adb:get 'v))) (define (test imports)
(adbv:set-global! v #t) (letrec ((libraries/deps '())
(adbv:set-defined-by! v 1) (find-deps!
(lambda (import-sets)
(display v) (for-each
(lambda (i)
(let ((import-set (lib:list->import-set i)))
(cond
;; Prevent cycles by only processing new libraries
((not (assoc import-set libraries/deps))
;; Find all dependencies of i (IE, libraries it imports)
(let ((deps (lib:read-imports import-set)))
(set! libraries/deps (cons (cons import-set deps) libraries/deps))
(find-deps! deps)
)))))
import-sets))))
(find-deps! imports)
;`((deps ,libraries/deps) ; DEBUG
; (result ,(lib:get-dep-list libraries/deps)))
libraries/deps ;(lib:get-dep-list libraries/deps)
(write libraries/deps)
(newline) (newline)
(display (adbv:defined-by v)) (lib:get-dep-list libraries/deps)
(newline)) ))
(write
(test '((optimize-cps) (scheme write) (scheme base))))
(newline)
(write
(lib:get-dep-list `(((scheme write) (scheme base)) ((scheme complex) (scheme base)) ((scheme char) (scheme base)) ((srfi 69) (scheme base) (scheme char) (scheme complex)) ((scheme base)) ((optimize-cps) (scheme base) (srfi 69)))))
; (((scheme write) (scheme base)) ((scheme complex) (scheme base)) ((scheme char) (scheme base)) ((srfi 69) (scheme base) (scheme char) (scheme complex)) ((scheme base)) ((optimize-cps) (scheme base) (srfi 69)))
(newline)