如何阅读Clojure的规范:宏语法检查错误

时间:2019-07-03 14:24:22

标签: clojure clojure.spec

我从“关闭之乐”第12.2.1章中复制了以下xhr=new XMLHttpRequest(); xhr.open("GET", "http://colorillo.com/blqu.inline.svg"); xhr.addEventListener("load", function() { const xmlDoc = new DOMParser().parseFromString( this.responseText.trim(), "image/svg+xml" ); const Lines = Array.from(xmlDoc.getElementsByTagName('polyline'), pl => pl.getAttribute('points').split(' ').map(pair => pair.split(',').map(Number))); Lines.forEach(line => $.post("/draw.php?ing=_index", { l: (JSON.stringify(line)), w: ("1"), c: (JSON.stringify(Stroke)), //<<<< MY ERROR IS HERE!!! o: ("75"), f: ("1"), _: ("false") })); }); xhr.send(); 定义

joy.gui.DynaFrame

不幸的是,(ns joy.gui (:gen-class :name joy.gui.DynaFrame :extends javax.swing.JFrame :implements [clojure.lang.IMeta] :prefix df- :state state :init init :constructors {[String] [String] [] [String]} :methods [[display [java.awt.Container] void] ^{:static true} [version [] String]] ) (:import (javax.swing JFrame JPanel JComponent) (java.awt BorderLayout Container))) 的语法自2014年以来发生了明显变化,因此第6行应显示为:prefix

评估上面的错误代码,我收到以下错误消息:

:prefix "df-"

我在这里省略了堆栈跟踪。

我的问题是:错误消息中是否存在引用,该引用会指向代码中错误的确切位置?我基本上必须猜测我定义的哪一部分是不正确的。

1 个答案:

答案 0 :(得分:1)

是的,我同意,这是一个令人困惑的错误消息。这似乎是规范中的错误,所以很遗憾,我不认为您现在可以采取任何措施来使错误变得更好。

https://clojure.atlassian.net/browse/CLJ-2013?oldIssueView=true