mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
*** empty log message ***
This commit is contained in:
parent
d4ae3ae6fa
commit
9d3903dbed
3 changed files with 9 additions and 4 deletions
|
@ -20,7 +20,6 @@
|
|||
;; Boston, MA 02111-1307, USA.
|
||||
|
||||
(define-module (language r5rs spec)
|
||||
:use-module (system base module)
|
||||
:use-module (system base language)
|
||||
:use-module (language r5rs expand)
|
||||
:use-module (language r5rs translate)
|
||||
|
@ -33,5 +32,5 @@
|
|||
:expander expand
|
||||
:translator translate
|
||||
:printer write
|
||||
:environment (global-ref 'Language::R5RS::core)
|
||||
;; :environment (global-ref 'Language::R5RS::core)
|
||||
)
|
||||
|
|
|
@ -26,6 +26,9 @@
|
|||
|
||||
(define (trans x) (if (pair? x) (trans-pair x) x))
|
||||
|
||||
(define *primitive-procedure-list*
|
||||
'(void car cdr cons + - * / < >))
|
||||
|
||||
(define (trans-pair x)
|
||||
(let ((name (car x)) (args (cdr x)))
|
||||
(let ((il (case name
|
||||
|
@ -41,7 +44,11 @@
|
|||
((lambda)
|
||||
(cons* '@lambda (trans-formals (car args))
|
||||
(map trans (cdr args))))
|
||||
(else (cons (trans name) (map trans args)))))
|
||||
(else
|
||||
(if (memq name *primitive-procedure-list*)
|
||||
;; FIXME: Temporary hack for direct optimization
|
||||
(cons (symbol-append '@ name) (map trans args))
|
||||
(cons (trans name) (map trans args))))))
|
||||
(props (source-properties x)))
|
||||
(if (not (null? props))
|
||||
(set-source-properties! il props))
|
||||
|
|
|
@ -22,7 +22,6 @@
|
|||
(define-module (system base language)
|
||||
:use-module (oop goops)
|
||||
:use-syntax (system base syntax)
|
||||
:use-module (system base module)
|
||||
:use-module (system il compile)
|
||||
:use-module (system vm core)
|
||||
:use-module (system vm assemble)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue