के लिए सामान्य लिस्प युक्तियाँ सीखना मैं एक अनुभवी सी ++/.NET/जावा विंडोज/वेब प्रोग्रामर सीखने की कोशिश कर रहा हूं (सामान्य) लिस्प। मैं Practical Common Lisp पढ़ रहा हूं और SLIME का उपयोग कर रहा हूं।विंडोज/सी ++ प्रोग्रामर
मैं आसानी से पर्याप्त लिस्प भाषा हो रही है, लेकिन मैं विकास के यांत्रिकी groking समस्या हो रही है। मेरे मुद्दों में से एक Emacs से निपट रहा है। मुझे इसके साथ कोई अनुभव नहीं है और यह आमतौर पर आदेशों को ढूंढने/समझने के लिए मुश्किल से भ्रमित लगता है।
विशिष्ट प्रश्न:
- मैं REPL मिलता है, लेकिन मैं काफी मैं इसे कैसे प्रभावी ढंग से उपयोग कर सकते हैं नहीं मिलता है। जब मुझे फ़ंक्शन बदलने की आवश्यकता होती है तो मुझे डिफ्यून को फिर से टाइप करना होगा और परिवर्तन करना होगा (थकाऊ और त्रुटि प्रवण)। मैं इसे बेहतर कैसे कर सकता हूं?
- वास्तव में प्रोग्राम करने के लिए आरईपीएल में कोड दर्ज करने से मैं कैसे प्राप्त करूं? मुझे सी मॉडल में उपयोग किया जाता है जहां आपके पास कोड फाइलें हैं जिन्हें आप समीक्षा, संपादित और पुन: संकलित कर सकते हैं। मुझे पता है कि लिस्प के पास कुछ समान है (लोड फ़ंक्शन के माध्यम से), लेकिन किसी को एक फ़ंक्शन कैसे मिलता है जिसे मैंने सहेजने के लिए फ़ाइल में परिभाषित और परीक्षण किया है? मुझे उम्मीद है कि मेरे वर्तमान चयन + कॉपी + पेस्ट से बेहतर तरीका है।
- आप त्रुटियों को डीबग कैसे करते हैं? क्या कोड में कदम उठाने की कोई क्षमता है जैसे मैं अन्य भाषाओं के साथ करता हूं?
- जब तक एस-अभिव्यक्ति मान्य है, मुझे
(defun ...)
दर्ज करते समय कोई त्रुटि नहीं मिलती है। यह तब तक नहीं है जब तक मैं इसका उपयोग करने की कोशिश नहीं करता कि मुझे पता चलता है कि यह मान्य नहीं है। क्या त्रुटियों को जल्द से जल्द प्राप्त करने का कोई तरीका है (यानी कोड संकलित करें)? - क्या कोई आईडीई है जो मुझसे अधिक परिचित होगी या मुझे भाषा के साथ खेलने की अनुमति देगी?
- क्या मुझे इसके बजाय Scheme सीखने के लिए स्विच करना चाहिए?
कोई युक्ति बहुत सराहना की जाएगी!
आप क्लोजर में भी देखना चाहते हैं; यह एक लिस्पी है जो जेवीएम पर चलती है और इसमें अच्छा इंटरऑप है। जावा के साथ मैंने अभी तक इसके साथ काम नहीं किया है, लेकिन इस पर कुछ व्याख्यान देखे हैं, और यह अच्छा लग रहा है। – paul