tail-call पर टैग किए गए जवाब

8
पुनरावर्ती एल्गोरिदम में स्टैक ओवरफ्लो से बचने के लिए क्या तरीके हैं?
सवाल पुनरावर्ती एल्गोरिथ्म के कारण होने वाले स्टैक ओवरफ्लो को हल करने के संभावित तरीके क्या हैं? उदाहरण मैं प्रोजेक्ट यूलर समस्या 14 को हल करने की कोशिश कर रहा हूं और इसे पुनरावर्ती एल्गोरिदम के साथ आजमाने का फैसला किया। हालाँकि, प्रोग्राम java.lang.StackOverflowError के साथ बंद हो जाता है। …

4
जेवीएम टेल-कॉल ऑप्टिमाइज़ेशन पर क्या सीमाएँ लगाता है
क्लोजर अपने आप ही टेल कॉल ऑप्टिमाइजेशन नहीं करता है: जब आपके पास टेल रीसर्चिव फंक्शन होता है और आप इसे ऑप्टिमाइज़ करना चाहते हैं, तो आपको स्पेशल फॉर्म का इस्तेमाल करना होगा recur। इसी तरह, यदि आपके पास दो पारस्परिक रूप से पुनरावर्ती कार्य हैं, तो आप केवल उपयोग …
36 scala  clojure  jvm  tail-call 

2
वाई कॉम्बिनेटर और पूंछ कॉल अनुकूलन
एफ # में एक वाई कॉम्बिनेटर की परिभाषा है let rec y f x = f (y f) x च के पहले तर्क के रूप में पुनरावर्ती उपप्रकारों के लिए कुछ निरंतरता होने की उम्मीद है। एक निरंतरता के रूप में yf का उपयोग करते हुए, हम देखते हैं कि …

3
फ़ंक्शन कॉल शब्दार्थ का प्रतिनिधित्व करने के लिए स्टैक का उपयोग करने के लिए कौन से विकल्प हैं?
हम सभी जानते हैं और प्यार करते हैं कि फ़ंक्शन कॉल आमतौर पर स्टैक का उपयोग करके कार्यान्वित किया जाता है; फ़्रेम, रिटर्न एड्रेस, पैरामीटर, पूरे लॉट हैं। हालांकि, स्टैक एक कार्यान्वयन विवरण है: कॉलिंग कन्वेंशन अलग-अलग चीजें कर सकते हैं (यानी x86 फास्टकॉल का उपयोग करता है (कुछ) रजिस्टर, …

4
जब कोई TCO नहीं है, तो स्टैक उड़ाने के बारे में चिंता कब करें?
हर बार जब जेवीएम को लक्षित करने वाली एक नई प्रोग्रामिंग भाषा के बारे में चर्चा होती है, तो अनिवार्य रूप से लोग ऐसी बातें कहते हैं: "जेवीएम टेल-कॉल ऑप्टिमाइज़ेशन का समर्थन नहीं करता है, इसलिए मैं बहुत सारे विस्फोट के पूर्वानुमान की भविष्यवाणी करता हूं" उस विषय पर हजारों …
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.