标签: quote

Lisp之间的区别(cons'a(cons'b'c))和(cons'a'(bc))

有什么区别:

(cons 'a (cons 'b 'c)) ;; (A B . C)
Run Code Online (Sandbox Code Playgroud)

(cons 'a '(b.c)) ;; (A B.C)
Run Code Online (Sandbox Code Playgroud)

我需要使用cons创建以下列表((ab).c),所以我试图理解那个"." 代表.

LE:我有以下(cons (cons 'a 'b) 'c)但它产生((A . B) . C)而不是((A.B).C)(注意额外的空格)

lisp cons quote

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

在 FluentNhibernate 上禁用表名双引号

我正在将我的应用程序切换到Postgresql,我的架构中的所有表都是小写的,当我使用 NHibernate 进行查询时,它会向映射中的表名添加双引号,该表名在 PascalCase 中并导致查询失败我认为该表不存在。

我可以轻松转到所有映射类并将 Table 方法更改为小写,例如从 'Table("UserAccount")' 更改为 'Table("useraccount")',但我宁愿不必这样做。 .

我想知道是否有任何方法可以告诉 nhibernate 不要在查询中对表进行双引号,以便它可以正确找到它。

我试过这个:

PostgreSQLConfiguration.Standard.Raw("hbm2ddl.keywords","none").ConnectionString(x => x.Is(_connectionString));
Run Code Online (Sandbox Code Playgroud)

它没有用。我几乎会告诉 nhibernate 不要担心大小写,但是在使用 postgres 时遇到麻烦。

postgresql nhibernate case case-sensitive quote

3
推荐指数
1
解决办法
1362
查看次数

正则表达式匹配引号外的给定单词

我需要能够匹配引号之外的“互联网”一词。例如

Internet "InternetFormula works and it's internetformula"
Internet "The internet works"
Run Code Online (Sandbox Code Playgroud)

但我不知道该怎么做,因为正则表达式很复杂,而且我找不到类似的东西。

regex match quote

3
推荐指数
1
解决办法
761
查看次数

剪辑错误消息:对象不能以 #\ 开头)。这是什么意思?

请看这个例子。我正在使用 GNU CLISP 2.49。

(defparameter *pudding-eater* 'henry')
;; output: 
READ from
#<INPUT CONCATENATED-STREAM #<INPUT STRING-INPUT-STREAM> #<IO TERMINAL-STREAM>>: an
  object cannot start with #\)

(defparameter *pudding-eater* 'henry)
;; output: 
*PUDDING-EATER*
Run Code Online (Sandbox Code Playgroud)

我确实明白是双引号引起了问题。我明白的是,什么an object cannot start with #\)意思?我从哪里开始#\)?我期待一些错误消息,如umatched parenthesis.

clisp common-lisp quote

3
推荐指数
1
解决办法
2855
查看次数

从字符串中的单引号中删除双引号

['00', '11"', 'aa', 'bb', "cc'"] 
Run Code Online (Sandbox Code Playgroud)

这是在Python中.我想剥掉双引号,以便我的输出成为

['00', '11', 'aa', 'bb', 'cc']
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

python quote

2
推荐指数
1
解决办法
2435
查看次数

C++错误 - 缺少结束引号

define在C++中使用带有反斜杠的方法,并与a一起ifstream调用a.但是,在使用反斜杠时出现错误,其中说:

错误 - 缺少结束报价.

我试过了#define BACKSLASH \,但根本没有任何价值:

#define BACKSLASH '\'

if((char)a.get() == BACKSLASH // Error here)
{
     // BLAH BLAH BLAH
}
Run Code Online (Sandbox Code Playgroud)

c++ backslash quote c-preprocessor

2
推荐指数
1
解决办法
5002
查看次数

返回值不是(quote <value>)

我正在尝试4clojure上的挑战,并陷入以下代码

(ns com.koddsson.for-clojure
  (:use [clojure.test :only [is deftest run-tests]]))

(defn my-flatten
  ([x] (if (not (and (seq? x) (vector? x)))
           x                      ; If x is not a sequence nor a vector
           (map my-flatten x))))  ; else recursivly apply the flatten function

(deftest test28
  (is (= (my-flatten '((1 2) 3 [4 [5 6]])) '(1 2 3 4 5 6)))
  (is (= (my-flatten ["a" ["b"] "c"]) '("a" "b" "c")))
  (is (= (my-flatten '((((:a))))) '(:a))))

(run-tests)
Run Code Online (Sandbox Code Playgroud)

它生成以下输出.

? bubblegum 20 ? ? …
Run Code Online (Sandbox Code Playgroud)

testing clojure quote

2
推荐指数
1
解决办法
60
查看次数

为什么我不能在bash中用引号生成换行符?

无论我做什么,我都无法在引号中使用引号来保持输出.我是什么做的?这是OS X中的bash.我的代码在这里:Gist

read -d '' sbt_text=$(cat <<"EOF"
#!/bin/bash
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M";
java $SBT_OPTS -jar `dirname $0`/sbt-launch.jar "$@"
EOF
)

echo $sbt_text

#!/bin/bash > SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"; > java -jar /sbt-launch.jar ""
Run Code Online (Sandbox Code Playgroud)

bash newline quote

2
推荐指数
1
解决办法
78
查看次数

从通用方法返回实例列表

我需要在通用方法中返回矩形的坐标列表。坐标是类“购物车”实例。

我尝试用make-instance将其退回

(defclass line ()
  ((start :initarg :start :accessor line-start)
   (end   :initarg :end   :accessor line-end)))

(defmethod print-object ((lin line) stream)
  (format stream "[LINE ~s ~s]"
          (line-start lin) (line-end lin)))

(defclass cart ()
  ((x :initarg :x :reader cart-x)
   (y :initarg :y :reader cart-y)))

(defmethod print-object ((c cart) stream)
  (format stream "[CART x ~d y ~d]"
          (cart-x c) (cart-y c)))

(setq lin (make-instance 'line
             :start (make-instance 'cart :x 4 :y 3)
             :end (make-instance 'cart :x 7 :y 5)))

(defgeneric containing-rect (shape))

(defmethod …
Run Code Online (Sandbox Code Playgroud)

evaluation common-lisp quote

2
推荐指数
1
解决办法
51
查看次数

将列表传递给Common Lisp中的宏

我在将列表传递到宏时遇到问题,该列表将用于生成函数名称。例如,下面的代码将导致错误。

(defmacro gen (str-lst)
  `(defun ,(intern (string-upcase (car str-lst))) () (print "foo")))

(gen '("foo" "bar"))
Run Code Online (Sandbox Code Playgroud)

产生的错误是:

***-DEFUN / DEFMACRO:QUOTE是一种特殊的运算符,不能重新定义。可以使用以下重新启动:ABORT:R1
中止主循环

我应该如何修改我的代码,我的代码有什么问题?

令我更加困惑的是,下面的代码(有关答案在此处退出)的运行正常。

(defmacro easy-one (str-lst)
  `(mapc #'(lambda (str) (print str)) ,str-lst))
(easy-one '("foo" "bar"))
Run Code Online (Sandbox Code Playgroud)

lisp macros metaprogramming common-lisp quote

2
推荐指数
1
解决办法
56
查看次数