나는 [... (defun는] 정의 된 일부 기능과 리스프 파일이 있습니다. Lisp 스크립트에서 함수 이름을 어떻게 정의 할 수 있습니까?
Java를 사용하여 스크립트에 정의 된 모든 함수 이름을 얻을 수있는 쉬운 방법이 있나요? 이
0
A
답변
1
이 아마도 당신이 중 일부를 사용할 수 있습니다
0
당신이 특정 패키지에 정의되어있는 기능을 알고 싶다면 A Small Lisp interpreter in Java의 코드, 당신 지팡이 매크로 with-package-iterator
를 사용하는이 같은. 그냥 추출 할 경우
(with-package-iterator (next (find-package 'test) :internal)
(loop :for (more? sym) := (multiple-value-list (next))
:if (fboundp sym) :collect sym :into rez
:else :unless more? :do (return rez)))
함수 (- 파일)에서 스크립트, 가장 쉬운 방법은 정규식 "\\(defun (.+)\\s"
또는 이와 비슷한 것으로 스캔하는 것 같습니다.
0
매우 간단한 경우 정규 표현식을 사용할 수 있습니다. 약간 단순한 경우에는 S- 표현식 판독기를 구현하는 것이 합리적인 방법 일 수 있습니다 (독자 매크로를 모두 무시할 수도 있습니다). 일반적인 경우, 특히 매크로학이 관련되어 있다면, Common Lisp의 Java 구현 인 Armed Bear Common Lisp을 삽입하고 언급 된 Vsevolod 양식 with-package-iterator
을 사용하는 것이 좋습니다.
관련 문제
- 1. 어떻게 자바 스크립트에서 DOM 이름을 이스케이프 할 수 있습니까?
- 2. Struts2에서 StreamResult의 출력 이름을 어떻게 정의 할 수 있습니까?
- 3. common lisp : 매크로는 어떻게 프로그래밍 방식으로 생성 된 이름을 가진 다른 메소드/매크로를 정의 할 수 있습니까?
- 4. VBA에서 함수 별칭을 정의 할 수 있습니까?
- 5. 변수의 이름을 가진 함수 정의?
- 6. perl에서 리터럴 문자열에 정의 된 함수 이름을 어떻게 호출 할 수 있습니까?
- 7. 함수 이름에 관계없이 재귀를 어떻게 수행 할 수 있습니까?
- 8. Lisp 역방향 "all"함수
- 9. 어떻게 자바 스크립트에서 함수 이상을 사용할 수 있습니까?
- 10. 자바 스크립트에서 같은 이름을 가진 함수
- 11. 어떻게 windows batch 스크립트에서 java로 패스 할 수 있습니까
- 12. lisp 함수 구체화
- 13. operator.methodcaller에서 함수 이름을 가져올 수 있습니까?
- 14. 파이썬 스크립트에서 실행중인 모든 함수/메소드를 추적 할 수 있습니까?
- 15. 임시 파일 이름을 만들기위한 일반적인 Lisp 함수 또는 관용구?
- 16. 함수 이름을 인수로 전달할 수 있습니까?
- 17. cfparam'd 변수를 어떻게 정의 할 수 있습니까?
- 18. CakePHP에서 스크립트를 어떻게 정의 할 수 있습니까?
- 19. 익명 형식을 어떻게 정의 할 수 있습니까?
- 20. 가장자리를 어떻게 정의 할 수 있습니까?
- 21. 어떻게 스트링으로 구조체를 정의 할 수 있습니까?
- 22. 어떻게 링크드리스트의 멤버를 정의 할 수 있습니까?
- 23. 어떻게 생성자를 정의 할 수 있습니까?
- 24. ObjectSet의 순서를 어떻게 정의 할 수 있습니까?
- 25. 델파이에서 IOCTL_ATA_PASS_THROUGH를 어떻게 정의 할 수 있습니까?
- 26. "else"블록을 어떻게 정의 할 수 있습니까?
- 27. 자바 스크립트를 동적으로 호출 할 함수 이름을 만들 수 있습니까?
- 28. Lisp 함수 : 공용어
- 29. 어떻게 ipython 구성 파일에 함수를 정의 할 수 있습니까?
- 30. scala의 함수 내에서 함수의 이름을 복구 할 수 있습니까?