मैं दोनों को सीखने का सुझाव देता हूं, पहले हास्केल, फिर कॉमन लिस्प। हास्केल के साथ मेरा अनुभव यह था कि स्टैटिक टाइपिंग पहले तो एक प्रतिबंधित झुंझलाहट ही प्रतीत होती थी, लेकिन एक बार जब मुझे इसकी आदत पड़ गई, तो मैंने देखा कि मेरी अधिकांश टाइप त्रुटियों में उनके पीछे छिपी हुई त्रुटियाँ थीं। जब आप इस बिंदु पर जाते हैं, और अगला मील का पत्थर, जो आपके समाधान को व्यक्त करने के साधन के रूप में सोचने और अपने स्वयं के प्रकारों को परिभाषित करने के लिए सीख रहा है, तो आप कॉमन लिस्प के लिए तैयार होंगे।
कॉमन लिस्प के साथ, आप हास्केल से पसंद किए गए मोनोएड्स, करी, और सब कुछ जोड़ सकते हैं, लेकिन आपको कई विरासत भी मिलती हैं जैसे कि फ्रैंक शीयर का उल्लेख है, और कई प्रेषण के साथ सामान्य कार्य, और एक उन्नत अपवाद हैंडलिंग सिस्टम।
तो पहले सिर्फ कॉमन लिस्प क्यों न सीखें? एक प्रक्रियात्मक और ओओपी पृष्ठभूमि से आते हुए, मेरा अनुभव यह रहा है कि मैं वास्तव में कार्यात्मक प्रोग्रामिंग को तब तक नहीं समझ पाया जब तक मुझे इसे विशेष रूप से उपयोग नहीं करना पड़ा। एक बार फ़ंक्शनल प्रोग्रामिंग सहज हो जाने के बाद, आप बाकी टूल्स को जोड़ सकते हैं, जो कॉमन लिस्प उपलब्ध कराता है, और जो भी उपकरण हाथ में काम के लिए सबसे अच्छा है, उसका उपयोग करें।