以下声明可用于重命名" expt"功能"电源":
(define-syntax power (make-rename-transformer #'expt)
可以多次使用上述语句重命名多个函数。
可以一次重命名多个功能,例如重命名+, - ,*和/分别添加,sub,mul和div?
答案 0 :(得分:2)
当然,
#lang racket
(define-syntax-rule (renamer [old new] ...)
(begin (define-syntax new (make-rename-transformer #'old)) ...))
(renamer [expt power] [+ add] [- sub])
但正如@AlexisKing所说,使用rename-in
会更方便。
#lang racket
(require
(rename-in racket/base
[expt power]
[+ add]))
(power 3 3) ;; 27