Created
December 11, 2016 10:40
-
-
Save zhouqiang-cl/5e19799582ad19af699e300d4ba2ca77 to your computer and use it in GitHub Desktop.
common lisp 的宏 IN-PACKAGE
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
语法 | |
in-package name => package | |
参数和值 | |
name --- 一个 string designator. | |
package --- 一个 package, 这个 package 的名字是 name | |
描述 | |
让名字为 name 的 package 称为current package。 如果没有这个 package, package-error 的异常就抛出 | |
代码 | |
* (make-package 'temp) | |
#<PACKAGE "TEMP"> | |
* (in-package "TEMP") | |
#<COMMON-LISP:PACKAGE "TEMP"> | |
补充: | |
个人猜想, 这个为何会是宏. 因为宏大多用在需要代码转换的地方. in-package 会把 name 中的变量什么的 load 进来, 对代码进行转换. | |
个人感觉,切换环境变量,保持流或者长连接什么的,比较适合作为宏 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment