तीन lispy homoiconic भाषाओं, Dylan, Julia और Seph सभी प्रमुख कोष्टक से दूर चले गए - तो कॉमन लिस्प में एक काल्पनिक समारोह कॉल कि ऐसा दिखाई देगा:क्लोजर डायलन, जूलिया और सेफ जैसे अग्रणी ब्रांड्स से दूर स्विच करके क्या खो देगा?
(print hello world)
तरह निम्नलिखित काल्पनिक समारोह कॉल लग चाहेंगे
ऊपर वर्णित तीन भाषाओं मेंprint(hello world)
।
इस मार्ग पर जाने के लिए क्लोजर थे - वहां पहुंचने के लिए उसे बलिदान देना होगा?
कारण: क्लोजर में अद्भुत आलसी कार्यात्मक डेटा संरचनाओं के अलावा, और नक्शे और seqs के लिए बेहतर वाक्यविन्यास के अलावा, समवर्तीता, जेवीएम मंच, टूलींग और भयानक समुदाय के लिए भाषा समर्थन - इसके बारे में विशिष्ट बात 'एक एलआईएसपी' अग्रणी संश्लेषण है जो homoiconicity दे रहा है जो मैक्रोज़ सिंटैक्स अमूर्तता प्रदान करता है।
लेकिन यदि आपको अग्रणी ब्रांड्स की आवश्यकता नहीं है - तो उन्हें क्यों? केवल तर्क मैं उन्हें रखने के लिए के बारे में सोच सकते हैं
(1) Emacs में पुन: उपयोग उपकरण समर्थन
(2) लोग उत्साह 'लिस्प में लगता है' और कोशिश करते हैं और एक और प्रक्रियात्मक भाषा के रूप में यह इलाज नहीं करने के लिए)
तुतलाना सौंदर्य का एक बड़ा हिस्सा तुच्छ parseability है और कोड के डेटा के रूप में प्रयोज्यता; आप उनमें से कुछ खो देंगे। – zmccord
फ़ंक्शन एप्लिकेशन केवल कई संभावित रूपों में से एक है। क्या आप उन्हें अलग तरीके से इलाज करने का प्रस्ताव कर रहे हैं? Clojure पहले से ही एक भयानक चीज किया, विपक्ष कोशिकाओं को खत्म कर दिया। किसी भी भविष्य में जाने से पूरी तरह से भाषा बर्बाद हो जाएगी। –
यह भी देखें http://stackoverflow.com/questions/643892/fixing-lisp-syntax। सवाल मुझे एक पास्कल डेवलपर की याद दिलाता है, मुझे पता था कि, जब सी का उपयोग करने का सामना करना पड़ा, तो मैक्रोज़ का एक सेट चाहता था जिसने सी को पास्कल की तरह बनाया। मुझे लगता है कि इसे हमेशा परेशान करने के लिए मजबूर कर कुछ नई चीज़ों के साथ अपनी असुविधा को कम करने का एक प्रलोभन होता है। और फिर भी कभी-कभी आपके लिए कुछ शर्तों से अलग होना अच्छा होता है। – user100464