My Lisp 파일에는 약 50 개의 함수 및 매크로 정의가 들어 있습니다. 파일의 머리 부분은 다음과 같습니다.Common Lisp에서 파일의 모든 정의 기호를 내보내는 방법은 무엇입니까?
(defpackage :utils
(:use :common-lisp))
(in-package :utils)
; ... ~50 defuns/defmacros follow along with some other code
이 50 개의 정의를 모두 내보내려고합니다. 그러나 다른 상징은 없습니다. defpackage 안에있는 export 절은 매우 지루한 것처럼 보입니다.
패키지의 기호를 나열하기 위해 루프 기능을 사용하여 필요한 기호를 얻으려고했습니다. 그러나 "symbol"과 "present-symbol"은 필요한 정의 기호를 출력하지 않습니다. 나는 어떻게 든 "외부 기호"와 상속 된 기호를 뺄 수있었습니다. 그러나 이것은 모든 사람이 필요로하는 종류의 것 같고 확고한 쉬운 해결책이 있어야합니다. 나는 주변을 둘러 보았고 직접적인 대답을 찾지 못했다.
개별적으로 또는 수동으로 작성하지 않고 모든 정의 기호를 내보내려면 어떻게합니까?
내 보낸 DEFUN 변형에 대해서는 DEFINE을, 내 보낸 DEFMACRO 변형에 대해서는 DEFINE-MACRO를 보았습니다. –