कुछ और शब्द लिखकर इसका उपयोग करना संभव है।
implication(X) :-
(
X = a,
write('Argument a received.'), nl
;
X = b,
write('Argument b received.'), nl
;
X \= a,
X \= b,
write('Received unknown argument.'), nl
).
(। हाँ मुझे नहीं लगता कि इसका उपयोग के साथ किसी भी समस्या है, लेकिन मेरे मालिक किसी कारण से इसके बारे में पागल था, इसलिए हम हमेशा ऊपर दृष्टिकोण का इस्तेमाल किया)
: मैं
Stephan's विधेय पुनर्लेखन हैं
किसी भी संस्करण के साथ, आपको सावधान रहना होगा कि आप उन सभी मामलों को कवर कर रहे हैं जिन्हें आप कवर करना चाहते हैं, खासकर यदि आपके पास कई शाखाएं हैं।
ईटीए: मुझे यकीन नहीं है कि यह स्टीफन के बराबर है, अगर आपके पास implication(X)
है तो बैकट्रैकिंग के कारण। लेकिन मेरे पास अभी जांच करने के लिए प्रोलॉग दुभाषिया नहीं है।
मैंने पढ़ा कि इसे पार्सर्स लिखने के लिए इस्तेमाल किया जा सकता है। एसयूएम -> ओ 1 + ओ 2 या कुछ ... –
यह है -> (दो अक्षर देखें), एसडब्ल्यूआई मैनुअल देखें: http://www.swi-prolog.org/pldoc/doc_for?object=section%282 % 2 सी% 20% 274.12% 27% 2 सी% 20swi% 28% 27% 2fdoc% 2fManual% 2fDCG.html% 27% 2 9% 2 9 – starblue