2012-04-15 21 views
6

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

मेरे पास शुरुआती राय है कि यह क्यों हो सकता है (सभी सामान्य पैटर्न के लिए कार्य प्रदान करें, शोर को कम करें), लेकिन मुझे इस विषय पर कुछ अनुभवी राय सुनने में दिलचस्पी है।

+3

बंद करने के लिए वोट दिया गया: यह एक अच्छा सवाल है, लेकिन बहुत राय-केंद्रित है और एसओ के लिए अच्छा फिट नहीं है। मैं [/r/haskell] (http://reddit.com/r/haskell) पर एक स्व-पोस्ट की अनुशंसा करता हूं –

+1

पर्याप्त मेला, [यहां यह हो] (http://www.reddit.com/r/haskell/ टिप्पणी/sb80y/why_is_haskell_so_large /)। – Scott

उत्तर

3

मैं कहूंगा कि हास्केल भाषा का आकार कहीं बीच में है (लिस्प से बड़ा, सी ++ से छोटा)। यद्यपि सभी सिंटैक्टिक चीनी ने हास्केल कोर (जिसमें लगभग 7 तत्व हैं) के लिए अच्छी तरह से परिभाषित अनुवाद हैं, लाइब्रेरी और भाषा के बीच अंतर करना थोड़ा मुश्किल है।

यह सच है कि पुस्तकालयों में बहुत से छोटे कार्य होते हैं, मूल रूप से क्योंकि हास्केल प्रोग्रामर को ऐसे पैटर्न मिलते हैं जो मोड़ते रहते हैं और फिर उन्हें कोड में डाल देते हैं। एक शिक्षार्थी के रूप में मुझे अक्सर यह महसूस होता था कि "ऐसा करने के लिए एक कार्य होना चाहिए" और फिर यह पता चला कि वहां था। आप उन्हें उसी तरह सीखते हैं जैसे वे लिखे गए थे: फ़ंक्शन स्वयं लिखें, और उसके बाद कुछ दिनों बाद कुछ लाइब्रेरी के लिए दस्तावेज़ में इसे ढूंढें।

+1

"लिस्प से बड़ा" क्या आपका मतलब योजना है? आम लिस्प विशाल होने के लिए कुख्यात है, और वास्तव में इसकी प्रतिक्रिया में योजना बनाई गई थी। –

+0

@ पास्कल क्यूक: यहां तक ​​कि कई आधुनिक भाषाओं की तुलना में आम लिस्प भी छोटा है। - सी ++ वास्तव में _that_ विशाल नहीं है। चीजों को करने के लिए इसमें कई अलग-अलग तरीके हैं। – leftaroundabout

+0

@ पास्कल क्यूक आप कह रहे हैं कि आगामी विशाल आम लिस्प की प्रत्याशा में योजना बनाई गई थी :)? – Peteris

संबंधित मुद्दे