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