मेरे पास अक्सर एक ही प्रकार के एकाधिक पैरामीटर के साथ एक फ़ंक्शन होता है, और कभी-कभी उन्हें गलत क्रम में उपयोग किया जाता है। एक साधारण उदाहरण के रूप मेंएफ # प्रेत प्रकार
let combinePath (path : string) (fileName : string) = ...
ऐसा लगता है कि प्रेत प्रकार किसी मिश्रण मिश्रण को पकड़ने का एक अच्छा तरीका होगा। लेकिन मुझे समझ में नहीं आता कि उदाहरण को केवल F# phantom types question में कैसे लागू करें।
मैं इस उदाहरण में प्रेत प्रकार कैसे कार्यान्वित करूं? मैं combinePath कैसे कॉल करूं? या क्या मुझे समस्या का एक आसान समाधान याद आ रहा है?
उन के बाद से कर रहे हैं एक मामले दस, आप भी 'combinePath (पथ (पी)) (fName (च)) = ...', अंत दे सकता हूँ कर सकते हैं -result वही होगा :) –
हां। यह आसान होगा। अद्यतन पोस्ट, धन्यवाद! – Petr
इसका मतलब प्रत्येक पैरामीटर प्रकार के लिए एक प्रकार घोषित करना होगा। मुझे लगता है कि मैं सोच रहा था कि यह माप की इकाइयों की तरह हो सकता है, स्ट्रिंग स्ट्रिंग । यद्यपि इसे अभी भी पथ और फ़ाइल नाम के लिए प्रकारों की आवश्यकता होगी, इसलिए अंत में यह वही है ... मेरे अपने बिंदु का जवाब मुझे लगता है। –