में फ़ंक्शन तर्क सूची निर्धारित करना क्या सामान्य फ़िस में फ़ंक्शन ऑब्जेक्ट (या फ़ंक्शन का प्रतीक) दिए गए फ़ंक्शन की तर्क सूची को खोजना संभव है?सामान्य लिस्प
उत्तर
यह प्रत्येक सीएल कार्यान्वयन लेकिन स्वांक पैकेज के लिए अलग (स्लाइम प्रदान करता है फ़े Emacs 'minibuffer में arglists दिखा सकते हैं जो) है एक भी समारोह में यह ऊपर लपेटता:
* (defun testfn (arg1 arg2 &key (arg3 :a)) (declare (ignore arg1 arg2 arg3)))
TESTFN
* (swank-backend:arglist #'testfn)
(ARG1 ARG2 &KEY (ARG3 :A))
यह भी काम करेंगे तरीकों के लिए:
* (defmethod testmethod ((arg1 t) arg2 &key (arg3 :a)) (declare (ignore arg1 arg2 arg3)))
STYLE-WARNING: Implicitly creating new generic function TESTMETHOD.
#<STANDARD-METHOD TESTMETHOD (T T) {1005670231}>
* (swank-backend:arglist #'testmethod)
(ARG1 ARG2 &KEY (ARG3 :A))
सबसे आसान तरीका है स्वांक पाने के लिए Quicklisp उपयोग करने के लिए है।
मुझे मानक तरीके से पता नहीं है लेकिन एसबीसीएल में आप sb-introspect:function-lambda-list
का उपयोग कर सकते हैं।
(defun test (a &rest rest &key (b 42)) nil)
(sb-introspect:function-lambda-list #'test)
=> (A &REST REST &KEY (B 42))
एएनएसआई कॉमन लिस्प फ़ंक्शन FUNCTION-LAMBDA-EXPRESSION प्रदान करता है, जो कार्यान्वयन का समर्थन करता है और अभिव्यक्ति रिकॉर्ड किया गया है, जो एक लैम्ब्डा अभिव्यक्ति लौटा सकता है। लैम्ब्डा अभिव्यक्ति में, दूसरा आइटम तर्क सूची है - सामान्य रूप से।
अन्यथा एक तर्क सूची वापस करने के लिए एएनएसआई सामान्य लिस्प मानक में परिभाषित नहीं किया गया है और विशिष्ट लिस्प कार्यान्वयन का हिस्सा है। उदाहरण के लिए कुछ 'वितरित' लिस्प एप्लिकेशन में यह जानकारी मौजूद नहीं हो सकती है।
आम तौर पर सबसे आम लिस्प कार्यान्वयन में कुछ आंतरिक पैकेज में एक निर्यात किया गया कार्य ARGLIST होगा।
- 1. सामान्य लिस्प
- 2. सामान्य लिस्प
- 3. सामान्य लिस्प
- 4. सामान्य लिस्प
- 5. सामान्य लिस्प
- 6. सामान्य लिस्प
- 7. सामान्य लिस्प
- 8. सामान्य लिस्प
- 9. सामान्य लिस्प
- 10. सामान्य लिस्प
- 11. सामान्य लिस्प
- 12. सामान्य लिस्प
- 13. सामान्य लिस्प -
- 14. सामान्य लिस्प
- 15. सामान्य लिस्प
- 16. सामान्य लिस्प
- 17. सामान्य लिस्प
- 18. सामान्य लिस्प
- 19. सामान्य लिस्प प्रकार विनिर्देश
- 20. एक सामान्य-लिस्प प्रोग्राम
- 21. सामान्य लिस्प की भविष्यवाणी
- 22. सामान्य लिस्प त्रुटि
- 23. सामान्य लिस्प और ग्नुपलॉट
- 24. सामान्य लिस्प ग्रे ग्रे
- 25. .NET से सामान्य लिस्प
- 26. सामान्य लिस्प में फ़ंक्शन दृढ़ता
- 27. सामान्य लिस्प में वेब डेवलपमेंट
- 28. सामान्य लिस्प फ़ंक्शन या मुहावरे?
- 29. सामान्य लिस्प में कक्षा आत्मनिरीक्षण
- 30. सामान्य लिस्प और emacs lisp
एक संगतता परत के रूप में स्वैंक? दिलचस्प – sabof