2017-07-02 131 views
1

當我在UCW中使用package:parenscript時,會出現許多名稱衝突。如果我保留舊的,Parenscript不起作用(另外,parenscript與直接parenscript:ps呼叫不正常),如果我導入新的,UCW似乎被打破。在共同的lisp中有沒有什麼方法可以使用名稱並列的包?Parenscript名稱與uncommonweb衝突(UCW)

回答

2

也parenscript行爲不端直接parenscript:PS呼叫

我猜這是因爲如果不這樣做使用包,如parenscript:@符號將不會導入,所以:

* (ps:ps (@ a b)) 

"at(a, b);" 

但是,如果你這樣做:

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

"a.b;" 

Lisp有沒有什麼辦法可以使用名稱並列的軟件包?

如果同時需要foo:abar:a,那麼你就不能只寫a,讓譯員找出你的意思。所以你必須限定至少一個他們。 您是否需要使用parenscript包並從UCW導入非衝突符號的包?你需要shadow-import其他嗎?沒有更多的細節,很難說這裏最好的做法是什麼。 如果您需要它,請參閱Programming in the Large: Packages and SymbolsPractical Common Lisp,P. Seibel)。