में एक पुनरावर्ती प्रकार घोषित करें मैं कुछ हास्केल कोड पोर्ट करके अपने स्वयं के F # को पढ़ाने की कोशिश कर रहा हूं।Haskell से F # - F #
data Op = Add | Sub | Mul | Div
data Expr = Val Int | App Op Expr Expr
एफ # में:
Specifily मैं उलटी गिनती समस्या से पता चला here
हास्केल कोड सूचीबद्ध है here
मैं एफ # में निम्नलिखित हास्केल प्रकार बनाने के लिए कोशिश कर रहा हूँ बंदरगाह के लिए कोशिश कर रहा हूँ मुझे लगता है कि ओप टाइप को निम्नानुसार परिभाषित किया गया है:
type Op = | Add | Sub | Mul | Div
मुझे एक्स्प्रेस प्रकार के साथ समस्याएं हैं।
कोई एक पुनरावर्ती प्रकार कैसे बनाता है? this SO question से ऐसा लगता है कि कोई F = में Expr प्रकार नहीं बना सकता है।
इसके अलावा 'एप' प्रकार के एफ # समकक्ष क्या है जो ओप प्रकार को एक्सप्र टाइप प्रकार पर लागू करता है।
यदि इस कोड को सीधे पोर्ट करना संभव नहीं है, तो कोई व्यक्ति वैकल्पिक डेटा संरचना का सुझाव दे सकता है।
बहुत बहुत धन्यवाद! – TonyAbell