LISP सीखने का सबसे अच्छा तरीका क्या है? [बन्द है]


167

मैं पायथन, पीएचपी, जावा और सी में एक या दो साल से प्रोग्रामिंग कर रहा हूं, और मैंने अभी हैकर्स और पेंटर्स पढ़ना शुरू कर दिया है, इसलिए मैं LISP को आजमाना चाहूंगा!

मैं इसके बारे में पूरी तरह से अलग हूं कि मुझे क्या पता है और यह आसान नहीं होगा। इसके अलावा मुझे लगता है (कृपया मुझे सही करें अगर मैं गलत हूं) LISP के आसपास कम समुदाय और विकास का रास्ता है। तो मेरा सवाल है: LISP सीखने का सबसे अच्छा तरीका क्या है?

मुझे किताबें खरीदने या कुछ समय निवेश करने में कोई आपत्ति नहीं होगी। मैं बस इसे बर्बाद नहीं करना चाहता।

"अंतिम" विचार वेब विकास के लिए LISP का उपयोग करना होगा, और मुझे पता है कि यह इतना सामान्य नहीं है ... मुझे पता है कि पहली पुस्तक या ट्यूटोरियल को चुनने से पहले मेरी शिक्षा की योजना बनाना अच्छा है और उस पर बहुत समय बिताना सबसे अच्छा तरीका है!

आपके जवाबों के लिए आप सभी का धन्यवाद!

संपादित करें: मैंने प्रैक्टिकल कॉमन लिस्प पढ़ा और था: ... लंबा, कठिन, दिलचस्प और निश्चित रूप से मुझे लिस्प में रोलिंग मिला, इसके बाद मैंने छोटे से स्कैमर को पढ़ा, और यह संक्षिप्त, मजेदार था और मेरी समग्र प्रोग्रामिंग के लिए बहुत अच्छा था। तो मेरी सिफारिश होगी कि आप पहले छोटे से स्कैमर को पढ़ें, फिर (इसके कुछ घंटे और इसके लायक) यदि आप लिस्प (या स्कीम या जो भी बोली) तय करते हैं वह वह नहीं है जहां आप खोज रहे हैं, तब भी आपको बहुत मज़ा आएगा पुनरावृत्ति के बारे में सोचने का नया तरीका!


आम लिस्प: एक इंटरएक्टिव दृष्टिकोण । स्टुअर्ट शापिरो की पुरानी (1992) पुस्तक। केवल मृत पेड़ हुआ करता था, लेकिन हाल के वर्षों में इलेक्ट्रॉनिक रूप में उपलब्ध है
कज़

रॉबर्ट विलेन्स्की द्वारा आम LISPCraft , एक दिलचस्प है, अगर पुरानी, ​​पुस्तक। मेरे पास एक हार्ड कॉपी है, दिनांक 1986।
कज़

जवाबों:


114

पीटर सीबेल द्वारा प्रैक्टिकल कॉमन लिस्प पढ़ने की कोशिश करें ।


2
मुझे लगता है कि मैंने अपने कैंपस में उस किताब को देखा ... इसलिए बीमार हो जाओ इसे अभी उठाओ!
DFectuoso 20

2
REPL के बारे में मत भूलना! मैंने LISP के बारे में जो कुछ भी सीखा है, उसका उपयोग नहीं किया है, लेकिन इसने मुझे अन्य सभी भाषाओं में बहुत बेहतर प्रोग्रामर बना दिया है।
रॉबर्ट के

1
अत्यधिक अनुशंसा करते हैं, यह वह पुस्तक थी जिसका उपयोग हमने अपने AI वर्ग के लिए किया था ताकि हम अपनी परियोजनाओं के लिए हमें LISP सिखा सकें।
हेल्लोएंड्रे

6
DFectuoso - यह सिर्फ एक लिंक नहीं है के बारे में किताब है, यह है किताब। पुस्तक ऑनलाइन पढ़ना शुरू करें
आरोन

2
हाँ, मुझे पता है, लेकिन मुझे मॉनिटर में पढ़ना पसंद नहीं है ... वैसे भी मैंने इसका जवाब coz मैं किताब पढ़ना शुरू कर दिया है और यह अच्छा है (इसके आधे से अधिक है और फिर थोड़ा schemer पढ़ें बीमार है, इसे संपादित करेंगे जब मैं दोनों को समाप्त करता हूं = 0)
DFectuoso

76

मेरा व्यक्तिगत पसंदीदा एबेल्सन और सुस्मैन संरचना और कंप्यूटर प्रोग्राम की व्याख्या है । यह स्कीम का उपयोग करता है, जो लिस्प की एक अच्छी और साफ बोली है।

यदि आप अधिक व्यावहारिक दृष्टिकोण पसंद करते हैं, तो शायद आपको वेब डिज़ाइन के लिए कुछ लिस्प फ्रेमवर्क चुनना चाहिए (मुझे कोई पता नहीं है कि क्या इस तरह के जानवर मौजूद हैं) और सही में कूदें।


1
पॉल ग्राहम के पास आर्क नामक एक लिस्प वेब ढांचा है।
ग्रेव

15
मेरा मानना ​​है कि आर्क लिस्प की अपनी बोली है, न कि केवल एक रूपरेखा। paulgraham.com/arc.html
michiakig

55

आप वार्म-अप के रूप में द लिटिल शेमर के साथ शुरुआत करना चाहते हैं । यह प्रोडक्शन लिस्प प्रोग्राम लिखने के बारे में एक व्यावहारिक पुस्तक नहीं है, लेकिन यह सीखने के लिए एक शानदार किताब है कि लिस्प में कैसे सोचना है।


यह एक अच्छा और तेजी से पढ़ने की तरह लगता है! TY
DFectuoso 20

5
मैं असहमत होगा। हां, इसमें गोता लगाना लिस्प सीखने का सबसे तेज़ तरीका हो सकता है, लेकिन यह लोगों को दूर करने की सबसे अधिक संभावना है। पीसीएल का यह फायदा है कि अनुभवी प्रोग्राम पहले दिन से केवल 1 दिन के बजाय लिस्प का उपयोग शुरू कर सकते हैं
हारून

43

MIT ने DIVX और MPEG प्रारूप में संपूर्ण LISP पाठ्यक्रम उपलब्ध कराया है। मैं इसकी पुरजोर सलाह देता हूँ।

http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/


3
व्याख्यान उनकी पाठ्यपुस्तक, संरचना और कंप्यूटर कार्यक्रमों की व्याख्या पर आधारित हैं।
ग्रेव

7
मुझे डिवएक्स वीडियो मिली एमपीईजी वीडियो के समान गुणवत्ता वाले होने के बावजूद, वे बहुत छोटे हैं। अपने आप को बैंडविड्थ और डिस्क स्थान सहेजें।
ड्रू नोक

2
और भी अधिक डिस्क स्थान बचत के लिए, लिंक पर जाएं और "संरचना और व्याख्या" (उद्धरण चिह्नों का उपयोग करके) खोजें।
बिल इवांस मैरिपोसा

मैं वीडियो एसआईसीपी से गुजर रहा हूं। वे किस बोली का उपयोग कर रहे हैं? वे बोली का कोई उल्लेख नहीं करते, वे इसे '
LISP

2
@priestc मुझे पता है कि यह सवाल 4 साल पहले पूछा गया था लेकिन इसे स्पष्ट करने के लिए। वे "स्कीम" का उपयोग कर रहे हैं।
dptd

33

अब of लैंड ऑफ एलआईएसपी ’ नाम की एक किताब निकली है, जो 80 के स्टाइल टेक्स्ट गेम्स को लिखने के माध्यम से एलआईएसपी प्रोग्रामिंग सिखाती है। मैं इसे अभी पढ़ रहा हूं, और यह बहुत अच्छी तरह से लिखा गया है और खुद को बहुत गंभीरता से नहीं लेता है, जो मुझे पसंद है।


23

यहां कई विकल्प हैं। सबसे पहले, स्कीम और कॉमन लिस्प, बल्कि गहरे तरीके (स्कूपिंग) की तरह अलग हैं; आपको एक के साथ शुरू करने के लिए चुनना चाहिए और थोड़ी देर के लिए इसके साथ रहना चाहिए । मैं एक आम लिस्प प्रशंसक हूं, लेकिन यह उन vi-vs-EMACS धार्मिक प्रश्नों में से एक हो सकता है।

स्कीम के लिए, कैंट डायविग की स्कीम प्रोग्रामिंग लैंग्वेज के लिए जाएं , उसके बाद एसआईसीपी।

कॉमन लिस्प के साथ-साथ प्रैक्टिकल कॉमन लिस्प के लिए, मैं डेविड लामकिन्स के सक्सेसफुल लिस्प की सिफारिश करूंगा सफल लिस्प भी मुफ्त में ऑनलाइन उपलब्ध है

की तुलना में, क्विनक द्वारा लिस्प में छोटे टुकड़े , और नॉरविग के लिस्प को एआई पुस्तक में देखें

जॉनी हॉपकिंस में मार्टी हॉल की एक अच्छी सूची है

अपडेट किया गया : मेरा मतलब यह नहीं है कि यह हमेशा के लिए चिपक जाए, बस एक बार दोनों को सीखने की कोशिश करना भ्रामक होगा।



17

मैं प्रोजेक्ट यूलर को छोटे काटने के आकार की समस्याओं के एक उत्कृष्ट स्रोत के रूप में सुझाता हूँ , जिसका उपयोग आप किसी भी नई प्रोग्रामिंग भाषा को सिखाने के लिए कर सकते हैं।


1
Im पहले से ही प्रोजेक्ट यूलर का एक अच्छा प्रतिभागी है, हां, जो समय मैं वहां बिताता हूं, वह LISP (एक बार मैं एक-दो सामान कैसे करना सीखता हूं) अभ्यास करूंगा
DFectuoso

9

पॉल ग्राहम की एएनआई कॉमन लिस्प एक अच्छी किताब है।

मुझे लगता है कि यह प्रिंट से बाहर हो सकता है, इसलिए अमेज़ॅन के माध्यम से इसे प्राप्त करने के लिए आपका सबसे अच्छा शर्त है। मुझे "नैचुरल लैंग्वेज प्रोसेसिंग" क्लास के लिए किताब मिली, मैंने कॉलेज में अपना साल भर का समय लिया। हमें LISP में प्रोग्रामिंग प्रोजेक्ट लिखना था, और इसलिए मुझे जल्दी से Lisp सीखने की जरूरत थी।

किताब ने मेरी काफी मदद की।


8

एक बार मुझे समस्या हुई। मैं लिस्प नहीं जानता था। इसलिए मैंने एक बॉक्स में LISP डाउनलोड करने का फैसला किया।

तब मैंने बिना किसी मदद या दस्तावेज के खुद को Emacs इंस्टॉल के साथ पाया।

तब मुझे दो समस्याएं हुईं।


2
यहाँ समस्या यह है कि किसी ने आपको ट्यूटोरियल के बारे में नहीं बताया; Control-H दबाएं, उन्हें छोड़ें और T दबाएं। यह आपको एक ट्यूटोरियल पर ले जाएगा, जो आपको आरंभ करने की आवश्यकता देगा। अपने बुरे अनुभव के बारे में सुनने के लिए क्षमा करें।
जेसनफ्रूट

7
पुराने रेगेक्स मजाक को संदर्भित करने के लिए +1, लेकिन इसके शीर्ष पर उपयोगी नहीं होने के लिए -1। :-P
माइकल एच।

7

गंभीर शिक्षार्थियों के लिए, मैं नॉरविग से पीएआईपी की सिफारिश करूंगा । यह लिस्प और एआई दोनों को सीखने के लिए एक उत्कृष्ट संसाधन है।


मैं यह दूसरा है, यह एक महान पुस्तक है, अच्छी तरह से लिखा है और व्यावहारिक आम लिस्प की तुलना में अधिक प्रेरणादायक है।
जोहान कोटलिंस्की 19

6

बर्कले ने CS61a को पॉडकास्ट प्रारूप में पेश किया। यह SICP के आसपास CS वर्ग के लिए एक परिचय है। यह एमआईटी द्वारा उपलब्ध 1982 के वीडियो की तुलना में अधिक आधुनिक संस्करण है।


6

मैं अभी लिस्प के माध्यम से अपने तरीके से काम कर रहा हूं और लिस्प सीखने के लिए "पुस्तक" पर आया हूं। इसका सुझाव रेनर जोसविग ने दिया था

पुस्तक को कॉमन लिस्प: अ जेंटल इंट्रोडक्शन टू सिम्बोलिक कंपीटिशन कहा जाता है और इसे पीडीएफ के रूप में डाउनलोड किया जा सकता है। लेखक पहले अध्याय में लिस्प के दृष्टिकोण जैसे यूएमएल के साथ शुरू होता है और धीरे-धीरे अधिक से अधिक लिस्प सिंटैक्स का परिचय देता है।

मैंने व्यावहारिक लिस्प पर भी ध्यान दिया है और मुझे लगता है कि लेखक बहुत सी आवश्यक सूचनाओं पर चमकता है, यहां तक ​​कि एक अनुभवी प्रोग्रामर के लिए भी। यह पुस्तक ऐसा प्रतीत नहीं होती है (मैं पूरी तरह से समाप्त नहीं हुआ हूं, लेकिन यह सुझाव देने के लिए पर्याप्त उपयोगी है)।

एक और बात, आपको काम करने के लिए एक वातावरण की आवश्यकता होगी। मैंने लिस्प को अच्छी तरह से काम करने के लिए एक बॉक्स में पाया है । यह विंडोज और लिनक्स पर चलता है और eMacs का उपयोग करता है।


5

मैं अपनी JVM बोली - क्लोजर द्वारा LISP के प्रति आकर्षित हुआ हूँ। क्लोजर महान LISP की तरह है, क्योंकि

  • इसमें "सरलीकृत सिंटैक्स" है, जो कम पैराथेंसिस की आवश्यकता होती है, संग्रह के चतुराई से डिजाइन सेट उपलब्ध है
  • यह JVM आधारित है, इसलिए पूरे जावा इकोसिस्टम (पुस्तकालयों, उदाहरण के लिए डेटाबेस ड्राइवर, बिल्ड टूल, IDE) के अलावा, स्थिर, निष्पादक रनटाइम नीचे है, हमारी पहुंच के भीतर है
  • नॉयर एक अच्छा वेब फ्रेमवर्क है, जावा वेब और एप्लिकेशन सर्वर पर ऐप्स को तैनात किया जा सकता है

दूसरे शब्दों में, क्लोजर का उपयोग अभी उत्पादन में किया जा सकता है, अभी।

जब संसाधनों की बात आती है, तो कम से कम 4 किताबें और प्लांटी ऑनलाइन संसाधन होते हैं:


4

मुझे प्रैक्टिकल कॉमन LISP और ANSI कॉमन LISP पढ़ने में बहुत मजा आया ।

LISP पर दिलचस्प लग रहा है, लेकिन $ 190 में एक किताब के लिए थोड़ा महंगा लगता है।


4
"ऑन लिस्प" लेखक की वेबसाइट से स्वतंत्र रूप से उपलब्ध है।
user49117

3
यहाँ मुफ्त के लिए ऑन लिस्प डाउनलोड करने के लिए लिंक है। लिंक
एंड्रयू-डफ्रेसने

4

वेब डेवलपमेंट के लिए आप आम लंपट में लिखे गए वेब सर्वर, हेंचेंटूट पर एक नज़र डाल सकते हैं ।


तुम्हें पता है, वेब के उन्मुख होने वाले लिस्प के आसपास सभी वेबसर्वर और चौखटे देखने के लिए इसका बहुत दुख ... ज़ीरो डिज़ाइन (सीएसएस या इनलाइन शैली भी है
DFectuoso

4

मैंने "द लिटिल स्कीमर" में अभ्यास के माध्यम से काम करते हुए पाया कि वास्तव में मेरी सोच के पुनरावर्ती, पैटर्न-मिलान पक्ष को सुधारने में मदद मिली और एक्सएसएलटी में काम करना काफी आसान हो गया।


2

मैं आपके प्रोग्रामिंग अनुभवों के आधार पर प्रतीकात्मक संगणना या प्रैक्टिकल कॉमन लिस्प के लिए जेंटल इंट्रोडक्शन की सलाह देता हूं। अभ्यास के लिए, मैं विंडोज में Allegro CL 8.2 फ्री एक्सप्रेस संस्करण का उपयोग करता हूं। यह अभ्यास को बहुत मज़ेदार बनाता है।


1

एक कठिन प्रश्न का उत्तर देने के लिए ... मुझे लगता है कि यह सब आपकी सीखने की शैली पर निर्भर करता है।

मैंने कॉलेज में अपने AI और एक्सपर्ट सिस्टम क्लासेस में LISP सीखा, लेकिन यह है कि मैं कैसे सीखता हूं ... मैं एक महान पुस्तक सीखने वाला नहीं हूं, मुझे लगता है कि कोई मुझे कक्षा सेटिंग में समझाता है।

LISP निश्चित रूप से एक अनूठी भाषा है और यदि आपको पारंपरिक C, Java, PHP प्रोग्रामिंग का उपयोग करने के लिए विचार की एक नई ट्रेन की आवश्यकता है।

तुम्हारे लिऐ शुभकामना !


1

मैंने पाया कि SICP पुस्तक को पढ़ने से वास्तव में मुझे सीखने में मदद मिली। मैंने स्टील बैंक कॉमन लिस्प (SBCL) का इस्तेमाल किया और इसे अच्छी सफलता मिली।

सौभाग्य


धन्यवाद Im आज कुछ किताबें लेने और बहुत जल्दी कल शुरू करने जा रहा हूँ!
DFectuoso 20

हालांकि, ध्यान दें कि एसबीसीएल कॉमन एलआईएसपी के लिए है और पुस्तक स्कीम के बारे में है। मैंने इसे अभी तक पूरी तरह से नहीं पढ़ा है, लेकिन मुझे लगता है कि यह अभी भी कॉमन LISP सीखने के लिए बहुत मदद कर सकता है। आपको बस कॉमन एलआईएसपी में समकक्ष खोजने की जरूरत है।
ज़ेल्फिर कल्टस्टाहल


0

मुझे नहीं पता कि लिस्प के बारे में कुछ विशेष है जो इसे किसी भी अन्य भाषा को सीखने से अलग बनाता है। आपको बस इसका उपयोग शुरू करने और इसकी विशेषताओं को आज़माने की आवश्यकता है।

एक विकल्प के लिए एक सरल परियोजना की कोशिश हो सकती है ।

एक अन्य विकल्प, जो कि लिस्प के लिए विशिष्ट है, एक एमएसीएस एक्सटेंशन लिखना होगा जो आपको अपने नियमित काम में सहायता करता है।


0

इन पुस्तकों को क्रम में पढ़ें: प्रतीकात्मक संगणना के लिए कोमल परिचय, पॉल ग्राहम द्वारा एएनएसआई कॉमन लिस्प और फिर प्रैक्टिकल कॉमन लिस्प पर जाएं। या एसीएल को छोड़ दें और पीसीएल के माध्यम से अपना काम करते समय इसे संदर्भ के रूप में उपयोग करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.