एलिक्सीर भाषा में यादृच्छिक पहुंच के साथ "कॉन्स्ट एरे" बनाने का कैननिक तरीका क्या है? (उदाहरण के एक सीआरसी गणना, या एईएस में इस्तेमाल के लिए स-बक्से)इलीक्सिर में "कॉन्स्ट एरे" के बराबर बनाने के लिए अनुशंसित तरीका क्या है?
Erlang पृष्ठभूमि मुझे लगता है से, कि "सरणी" खुद elem/2
/element/2
के माध्यम से एक टपल, उपयोग के रूप में होना चाहिए हे हो रहा है (1) (BIF_RETTYPE element_2(BIF_ALIST_2)
erts/emulator/beam/bif.c
में फ़ंक्शन 0)।
लेकिन भंडारण के दायरे के बारे में क्या, जैसा कि एरलांग/एलिक्सीर के पास कोई ग्लोबल नहीं है? मेरी नाक कहती है @module_attribute
जगह होगी, लेकिन मुझे पूरा यकीन नहीं है कि कहां और कब @attributes का विस्तार किया जाता है।
एक ज्ञात एरलांग समस्या है: जब आप मॉड्यूल में -define(LARGE_LIST,[...])
और फिर कार्यों में ?LARGE_LIST
का उपयोग करें। मूल्य प्रत्येक फ़ंक्शन कॉल पर फिर से बनाया जाता है। समाधान शुरू होने पर इसे एक बार निर्माण करना था और पैरामीटर में से एक के रूप में इसे आवश्यक कार्यों को पास करना था।
क्या एलीक्सिर के @module_attribute
इस समस्या को हल करते हैं या इसे फैंसी मैक्रो विस्तार के रूप में माना जाता है? मैंने module attributes पर आधिकारिक दस्तावेज़ पढ़े हैं, लेकिन मैं अभी भी उलझन में हूं।