Parenscript 名称与 uncommonweb (UCW) 冲突

Parenscript name conflicts with uncommonweb (UCW)

我在 UCW 中使用-package :parenscript 时出现了很多名称冲突。如果我保留旧的,Parenscript 不起作用(另外,直接 parenscript:ps 调用的 parenscript 行为不端),如果我导入新的,UCW 似乎被破坏了。 common lisp 中有什么方法可以并排使用名称冲突的包吗?

also, parenscript misbehaves with direct parenscript:ps call

我猜这是因为如果你不使用这个包,像parenscript:@这样的符号将不会被导入,所以:

* (ps:ps (@ a b))

"at(a, b);"

但如果你这样做:

* (ps:ps (ps:@ a b))

"a.b;"

Is there any way in common lisp to use packages with conflicting names side by side ?

如果你同时需要foo:abar:a,那么你不能只写a让解释器明白你的意思。所以你必须至少有一个资格。 您是否需要使用 parenscript 包并从 UCW 导入非冲突符号?您需要 shadow-import 其他的吗?没有更多细节,很难说这里最好做什么。 如果您需要它,请参阅 Programming in the Large: Packages and SymbolsPractical Common Lisp,P. Seibel)。