यह आमतौर पर गणित में गुना के साथ-साथ काफी किसी भी प्रोग्रामिंग भाषा कहा जाता है। यह कैटमोर्फिज्म की अधिक सामान्य अवधारणा का एक उदाहरण है। रूबी को इस सुविधा के लिए स्मॉलटाक से अपना नाम प्राप्त होता है, जहां इसे inject:into:
कहा जाता है (aCollection inject: aStartValue into: aBlock.
जैसा प्रयुक्त होता है) तो रूबी में इसे inject
कहा जाता है। यह reduce
पर भी उपनाम है, जो कुछ हद तक दुर्भाग्यपूर्ण है, क्योंकि इसका आमतौर पर कुछ अलग होता है।
आपका सी # उदाहरण रूबी में कुछ इस तरह दिखेगा:
factorial = [1, 2, 3, 4, 5].reduce(:*)
हालांकि इन में से एक शायद और अधिक मुहावरेदार होगा:
factorial = (1..5).reduce(:*)
factorial = 1.upto(5).reduce(:*)
स्रोत
2011-02-18 02:09:45
यह कहा जाता है 'reduce' - http: // विभिन्न भाषाओं में समकक्ष के लिए en.wikipedia.org/wiki/Fold_%28higher-order_function%29। – Gabe
आपको शायद इस टिप्पणी को एक उत्तर देना चाहिए ताकि रमेश इसे स्वीकार किए गए उत्तर के रूप में चिह्नित कर सके। – chuckj