【问题标题】:How to resolve "Unbound Identifier Error : Racket"如何解决“未绑定标识符错误:球拍”
【发布时间】:2020-09-28 05:57:09
【问题描述】:

球拍新手。为什么下面显示 lo 的未绑定标识符错误的任何想法:

(let (
       (l0 (gensym "end"))
       (l1 (gensym "if"))
       (c1 (compile-e el))
       (c0 (compile-cs cs l0)) ;;unbound identifier error here
       )
   `((mov rax 1)
     ,@c0
     (cmp rax 0)
     (je ,l0)
     ,@c1         
     ,l0))]

【问题讨论】:

    标签: racket


    【解决方案1】:

    当您想在let 中定义引用变量时,您可以使用let* 或使用local

    (let* [(var-define-inside-let 'let*-test)
           (var-reference var-define-inside-let)]
      var-reference)
    
    (local [(define var-define-inside-local 'local-test)
            (define var-reference var-define-inside-local)]
      var-reference)
    

    Racket Documentation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-08
      • 1970-01-01
      • 2014-01-13
      • 1970-01-01
      • 2019-05-01
      • 1970-01-01
      • 2018-12-05
      相关资源
      最近更新 更多