Разлика између Пролога и Лиспа

Пролог вс Лисп

Пролог и Лисп су два најпопуларнија језика за рачунарски програм АИ (Артифициал Интеллигенце). Грађени су са две различите програмске парадигме. Пролог је декларативни језик, док је Лисп функционалан језик. Оба се користе за разне АИ проблеме, али Пролог се највише користи за проблеме логике и резоновања, док се Лисп користи за проблеме са брзим потребама прототипирања..

Пролог

Пролог је АИ програмски језик. Припада породици логичких програмских језика. Пролог је декларативни језик у којем се рачунање врши преношењем упита о односима (који представљају програмску логику), који су дефинисани као правила и чињенице. Развијен 1970. године, пролог је један од најстаријих програмских језика логике и један од најпопуларнијих програмских језика АИ данас (заједно са Лиспом). То је бесплатан језик, али доступне су многе комерцијалне варијанте. Прво се користило за обраду природног језика, али сада се користи за разне задатке попут стручних система, система за аутоматско одговарање, игара и напредних система управљања. Пролог има само један тип података који се назива појам. Термин може бити атом, број, променљива или сложен термин. Бројеви могу бити флоат или цијели бројеви. Пролог подржава листе и низове као колекцију предмета. Пролог дефинише односе користећи клаузуле. Клаузуле могу бити или правила или чињенице. Пролог омогућава итерацију темељним рекурзивним предикатима.

Лисп

Лисп је породица рачунарских програмских језика. А најпознатија Лиспова дијалекта која се данас користе за програмирање опште намене су Цоммон Лисп и Сцхеме. Назив ЛИСП долази од „ЛИСт Процессинг“ и као што наговештава, главна датотека података компаније Лисп је повезана листа. У ствари, читав извор је написан помоћу листа (користећи нотацију префикса) или тачније заградивих листа (званих с-изрази). На пример, позив функције пише се (ф а1 а2 а3), што значи да се функција ф зове помоћу а1, а2 и а3 као улазних аргумената за функцију. Стога се назива изразом оријентисан језик, где су сви подаци и код записани као изрази (не постоји разлика између израза и изјава у Лиспу). Ова лепа карактеристика је посебна за Лисп, где се може употребљавати за ширење језика на проблем при писању корисних макроа. Иако програмери користе рекорсију репа за изражавање петљи, сви често виђени Лиспови дијалекти укључују контролне структуре попут петље. Надаље, Цоммон Лисп и схема имају мапцар и мап који су примјери функција, који пружају петље функционалности примјењујући функцију сукцесивно на све њене елементе, а затим прикупља резултате на листу.

Која је разлика између Пролога и Лиспа?

Иако су Пролог и Лисп два најпопуларнија програмска језика АИ, они имају различите разлике. Лисп је функционалан језик, док је Пролог логички програмски и декларативни језици. Лисп је веома флексибилан због брзог прототипирања и макро својстава, тако да заправо омогућава проширење језика како би се прилагодио проблему који тренутно постоји. У области АИ, графике и корисничких интерфејса, Лисп се широко користио због ове брзе способности прототипирања. Међутим, због својих уграђених способности логичког програмирања, Пролог је идеалан за АИ проблеме са симболичким резоновањем, апликацијама за рашчламбу база података и језика. Избор једног над другим у потпуности зависи од врсте АИ проблема који треба решити.