* the compiler can now import values defined in other libraries
in the compiler.
This commit is contained in:
parent
8d19b91270
commit
e568cc87d9
BIN
src/ikarus.boot
BIN
src/ikarus.boot
Binary file not shown.
|
@ -1,12 +1,23 @@
|
||||||
|
|
||||||
|
|
||||||
|
;;; this is here to test that we can import things from other
|
||||||
|
;;; libraries within the compiler itself.
|
||||||
|
|
||||||
|
(library (ikarus greeting)
|
||||||
|
(export print-greeting)
|
||||||
|
(import (scheme))
|
||||||
|
(define (print-greeting)
|
||||||
|
(define-syntax compile-time-string
|
||||||
|
(lambda (x) (date-string)))
|
||||||
|
(printf "Ikarus Scheme (Build ~a)\n" (compile-time-string))
|
||||||
|
(display "Copyright (c) 2006-2007 Abdulaziz Ghuloum\n\n")))
|
||||||
|
|
||||||
|
|
||||||
;;; Finally, we're ready to evaluate the files and enter the cafe.
|
;;; Finally, we're ready to evaluate the files and enter the cafe.
|
||||||
|
|
||||||
(library (ikarus interaction)
|
(library (ikarus interaction)
|
||||||
(export bar)
|
(export bar)
|
||||||
(import (scheme))
|
(import (scheme) (ikarus greeting))
|
||||||
|
|
||||||
(define bar 'i-am-an-exported-primitive-named-foo)
|
(define bar 'i-am-an-exported-primitive-named-foo)
|
||||||
|
|
||||||
|
@ -33,11 +44,7 @@
|
||||||
(load script)
|
(load script)
|
||||||
(exit 0)]
|
(exit 0)]
|
||||||
[else
|
[else
|
||||||
(let ()
|
(print-greeting)
|
||||||
(define-syntax compile-time-string
|
|
||||||
(lambda (x) (date-string)))
|
|
||||||
(printf "Ikarus Scheme (Build ~a)\n" (compile-time-string)))
|
|
||||||
(display "Copyright (c) 2006-2007 Abdulaziz Ghuloum\n\n")
|
|
||||||
(command-line-arguments args)
|
(command-line-arguments args)
|
||||||
(for-each load files)
|
(for-each load files)
|
||||||
(new-cafe)
|
(new-cafe)
|
||||||
|
|
Loading…
Reference in New Issue