Tofauti Kati ya Prolog na Lisp

Tofauti Kati ya Prolog na Lisp
Tofauti Kati ya Prolog na Lisp

Video: Tofauti Kati ya Prolog na Lisp

Video: Tofauti Kati ya Prolog na Lisp
Video: Pascal vs C++ vs Lisp vs Prolog 2024, Julai
Anonim

Prolog vs Lisp

Prolog na Lisp ni lugha mbili za AI (Artificial Intelligence) maarufu leo za kupanga programu za kompyuta. Zimejengwa na dhana mbili tofauti za programu. Prolog ni lugha ya kutangaza, wakati Lisp ni lugha ya utendaji. Zote mbili zinatumika kwa matatizo mbalimbali ya AI lakini Prolog hutumiwa zaidi kwa matatizo ya mantiki na hoja, wakati Lisp inatumika kwa matatizo ya mahitaji ya haraka ya prototype.

Prolog

Prolog ni lugha ya programu ya AI. Ni ya familia ya lugha za programu za mantiki. Prolog ni lugha ya kutangaza, ambayo hesabu hufanywa kwa kuendesha maswali juu ya mahusiano (ambayo yanawakilisha mantiki ya programu), ambayo hufafanuliwa kama sheria na ukweli. Iliyoundwa mwaka wa 1970, prolog ni mojawapo ya lugha za kale za programu za mantiki na mojawapo ya lugha maarufu zaidi za programu za AI leo (pamoja na Lisp). Ni lugha isiyolipishwa, lakini anuwai nyingi za kibiashara zinapatikana. Ilitumika kwa mara ya kwanza kwa usindikaji wa lugha asilia, lakini sasa inatumika kwa kazi mbalimbali kama vile mifumo ya wataalamu, mifumo ya kujibu kiotomatiki, michezo na mifumo ya udhibiti wa hali ya juu. Prolog ina aina moja tu ya data inayoitwa neno. Neno linaweza kuwa atomi, nambari, kigezo au neno ambatani. Nambari zinaweza kuelea au nambari kamili. Prolog inasaidia orodha na kamba kama mkusanyiko wa vitu. Prolog inafafanua mahusiano kwa kutumia vifungu. Vifungu vinaweza kuwa sheria au ukweli. Prologi huruhusu kurudiwa kwa kina kwa viambishi vyake vya kujirudi.

Midomo

Lisp ni familia ya lugha za kupanga programu za kompyuta. Na lahaja maarufu zaidi za Lisp zinazotumiwa kwa upangaji wa madhumuni ya jumla leo ni Common Lisp na Scheme. Jina LISP linatokana na "Orodha ya Uchakataji" na kama inavyodokeza, muundo mkuu wa data wa Lisp ndio orodha iliyounganishwa. Kwa kweli chanzo kizima kimeandikwa kwa kutumia orodha (kwa kutumia nukuu ya kiambishi awali), au orodha zilizowekwa kwa usahihi zaidi (zinazoitwa s-maneno). Kwa mfano, simu ya kukokotoa imeandikwa kama (f a1 a2 a3), ambayo ina maana chaguo za kukokotoa f huitwa kwa kutumia a1, a2 na a3 kama hoja za ingizo za chaguo za kukokotoa. Kwa hivyo inaitwa lugha inayoelekezwa kwa usemi, ambapo data na nambari zote zimeandikwa kama misemo (hakuna tofauti kati ya misemo na taarifa katika Lisp). Kipengele hiki kizuri ni maalum sana kwa Lisp, ambapo kinaweza kutumika kupanua lugha kwa tatizo lililopo kwa kuandika macros muhimu. Ingawa urejeshaji mkia hutumiwa na watayarishaji programu kuelezea vitanzi, lahaja zote za Lisp zinazoonekana mara kwa mara zinajumuisha miundo ya udhibiti kama kitanzi. Zaidi ya hayo, Common Lisp na scheme zina ramani na ramani ambayo ni mifano ya vitendakazi, ambayo hutoa utendakazi wa kitanzi kwa kutumia chaguo la kukokotoa kwa vipengele vyake vyote na kisha kukusanya matokeo kwenye orodha.

Kuna tofauti gani kati ya Prolog na Lisp?

Ingawa, Prolog na Lisp ni lugha mbili maarufu za upangaji za AI, zina tofauti tofauti. Lisp ni lugha inayofanya kazi, wakati Prolog ni programu ya mantiki na lugha za kutangaza. Lisp inaweza kunyumbulika sana kwa sababu ya uchapaji wake wa haraka na sifa kuu, kwa hivyo inaruhusu kupanua lugha ili kuendana na shida iliyopo. Katika maeneo ya AI, michoro na miingiliano ya watumiaji, Lisp imetumika sana kwa sababu ya uwezo huu wa haraka wa protoksi. Walakini, kwa sababu ya uwezo wake wa upangaji wa mantiki uliojengwa, Prolog ni bora kwa shida za AI na hoja za ishara, hifadhidata na programu za uchanganuzi wa lugha. Uchaguzi wa moja juu ya nyingine hutegemea kabisa aina ya tatizo la AI linalohitaji kutatuliwa.

Ilipendekeza: