मैं मुख्य रूप से एक सी ++ (इस प्रकार एक ओओ/अनिवार्य) प्रोग्रामर हूं और मुझे यह बहुत विचित्र लगता है कि आप एक सशर्त बयान में प्रति मूल्यांकन एक विवरण दे सकते हैं जैसे कि योजना में एक if-statement, एक कार्यात्मक भाषा।क्या सशर्त बयान के शरीर के अंदर कई बयानों की संभावना है?
उदाहरण के लिए:
(let ((arg1 0) (arg2 1))
(if (> arg1 arg2)
arg1
arg2)))
गलत उदाहरण:
(let ((arg1 0) (arg2 1))
(if (> arg1 arg2)
(arg1 (display "cool"))
(arg2 (display "not cool"))))
मुझे एक प्रकार का एक त्रुटि देता है ": उम्मीद प्रक्रिया, यह देखते हुए: प्रक्रिया आवेदन 2; तर्क गया: #void"
जिसे परिभाषित फ़ंक्शन के शरीर के भीतर अलग-अलग बयानों में कहा गया सशर्त बयान देकर हल किया जा सकता है, सशर्त बयान के शरीर को सीपी रखने के साथ arate बयान हर बार इस प्रकार है:
(if (condition) statement1a statement2a)
(if (condition) statement1b statement2b)
और इतने पर ...
यह कह रही है कि यह बहुत व्यावहारिक नहीं है बिना चला जाता है। डुप्लीकेट कोड ओवरहेड का जिक्र नहीं है।
क्या मुझे यहां कुछ याद आ रहा है या वास्तव में कोई अन्य तरीका नहीं है?
सच है, मुझे यह देखना चाहिए कि फ़ंक्शन कॉल करने के लिए वाक्यविन्यास (function_name args ...) है और एक फ़ंक्शन स्वयं योजना में एक चर हो सकता है। त्रुटि संदेश का उल्लेख नहीं करना ठीक वही बात कहा। एक त्वरित उत्तर के लिए धन्यवाद। –