小编jua*_*ana的帖子

Scheme/Racket - 用于更改过程顺序和参数的宏

我想更改以下表达式的语法:

(> 2 1)
Run Code Online (Sandbox Code Playgroud)

类似于:

(2 greater 1)
Run Code Online (Sandbox Code Playgroud)

我的第一次尝试是以下宏:

(define-syntax greater 
  (lambda (x)
    (syntax-case x (greater)
      [(a greater b)
       (syntax (> a b))])))
Run Code Online (Sandbox Code Playgroud)

使用此宏失败:"语法错误:更大"

我一直在浏览一些Scheme文档,但我找不到这样做的方法.

macros scheme racket

3
推荐指数
2
解决办法
349
查看次数

标签 统计

macros ×1

racket ×1

scheme ×1