2015-02-09 9 views
6

मैं हाल ही में एआई प्रोजेक्ट Parry के लिए source code पर देख रहा हूं। यह मुश्किल है क्योंकि कोड का बड़ा हिस्सा MLISP में लिखा गया है, जिसके लिए कोई कार्य कार्यान्वयन अभी भी मौजूद नहीं है (जिसे मैं जानता हूं)। इसके बजाय, मैं भाषा विनिर्देश (MLISP Users' Manual और पहले MLISP Technical Report) का उपयोग कर रहा हूं।एमएलआईएसपी में ALSO कीवर्ड का क्या अर्थ है?

एक जिज्ञासा है कि मैं व्याख्या करने में सक्षम नहीं किया गया है IF-THEN-ELSE-ALSO निर्माण, जैसे:

IF !LAMBDANAME(B) THEN ERROR("NONLAMBDA INTO REACT2",B) ALSO RETURN NIL; 

प्रलेखन मैं खोजने के लिए IF ब्यान के लिए ALSO खंड का उल्लेख नहीं करता सक्षम किया गया है, और मैं मैं अपने सिर को खरोंचने के लिए थोड़ा सा समझ रहा हूं कि यह क्या है।

एक व्यावहारिक सुझाव मैंने देखा है कि इसका उपयोग जावा में अपवाद हैंडलिंग के लिए finally खंड का उपयोग किया जाता है, यानी सफाई कोड चलाने के लिए कोई फर्क नहीं पड़ता कि IF कैसे समाप्त हो गया है।

IF REACTTO='QUIT THEN REACTTO:=NIL ALSO TRACE_MEM:='NOSPECIALANAPH; 

कोई भी विचार: दूसरी ओर, कि है कि कभी नहीं दिखाई देते हैं अपवाद को बढ़ाने के लिए बयान, जैसे की व्याख्या नहीं करता?

+0

कुल अनुमान है, लेकिन शायद यह पहली बार के बाद दूसरा बयान को चलाने के लिए वाक्यात्मक चीनी का सिर्फ एक टुकड़ा है, में इस मामले में, अगर ... ईएलएसई? – Linuxios

उत्तर

7
IF e1 THEN a ALSO b ALSO c ELSE d ALSO e ALSO f 

सिर्फ

(COND (e1 a b c) (T d e f)) 

डेविड Canfield स्मिथ से MLISP देखें, 1970

+0

तो 'भी बी भी सी' अनिवार्य रूप से चीनी ('ज्ञात() बी बी) के लिए चीनी है? –

+0

मैं एमआईएलएसपी-अज्ञानी हूं - क्या 'प्रोजेन' को खाली फॉर्म चाहिए? सीएल में मैंने अभी कहा होगा '(एक बी सी प्रमाणित) '। – khedron

+0

@ शेड्रॉन: नहीं, यह सिर्फ मुझे 'प्रोग' के साथ बेवकूफ और भ्रमित 'प्रज्ञान' है। –

संबंधित मुद्दे