ПредишенСледващото

Език е центриран около малък набор от основните механизми, включително модел за съвпадение. treelike представяне на структури от данни и системи за автоматично връщане назад. Подходящ за задачи, където въпросният предмет (по-специално структурирани обекти) и отношенията между тях. Prologue, поради своите характеристики, се използва в областта на изкуствения интелект, компютърната лингвистика и нечислова програмиране като цяло. В някои случаи прилагането на символична изчисляване на други стандартни езици е необходимостта от създаване на много код, сложен, за да се разбере, а реализацията на едни и същи във езикови алгоритми Prolog дава една проста програма, може лесно да се побере на една страница.

Prolog е декларативен език за програмиране: програма логика се изразява по отношение на взаимоотношенията представени под формата на факти и правила. За да започне изчисляването, извършва специално искане до базата от знания, на която логика програмиране система генерира отговори "вярно" и "невярно". За общи запитвания с променливи като аргументи в системата, създадена Prolog показва конкретни данни, за да докаже истинността на информацията и за извеждане на правилата за общи.

Историята на език се отнася до 1970. [1] Както е декларативен език за програмиране. Prologue възприема като програма за описание на проблема или знания бази, а той прави логичен извод, както и търсене на решаване на проблеми, с помощта на търсачката, за да се върне и обединение.

Интересът към Prolog и почина няколко пъти, ентусиазъм бе заменен от твърд отказ. Най-голям е бил повдигнат интерес на езика Prolog като език на бъдещето, по време на развитието на петото поколение на компютри на японската национална програма през 1980 г., когато се надяваха на разработчиците, че с помощта на пролог ще бъде да се формулират нови принципи, които ще доведат до създаването на компютри по-високи нивото на интелигентност.

Prolog през 1980 г. е била включена в броя на съветските университетски и училищни учебници за изучаване на компютърни науки елементи от математическата логика, принципите на логиката програмиране и дизайн бази от знания и експертни системи модели. За тази цел, на руски език преподава Prolog преводачи са изпълнени на компютъра IBM, а броят на съветските училищните компютри.

В Prolog фактите, описани под формата на предикатна логика, с конкретни стойности. правила извод са описани от логически предикати с определянето на правилата за извеждане списък предикат на бази от знания и процедури за обработка на данни.

В момента, пролог, въпреки многократните песимистичните прогнози, продължава да се развива в различни страни и включва нови технологии и концепции, както и програмиране парадигма наложително. По-специално, една от областите на развитие език (включително България) реализира концепцията за интелигентни агенти.

Prolog се изпълнява в продължение на почти всички известни операционни системи (ОС) и платформи (включително Java и .NET). Броят на операционни системи включват: OS мейнфрейм. цялото семейство Unix. Windows. OS за мобилни платформи.

Основният принцип е, равностойност на език и представяне на данните от програмата (декларативни), като одобрение на език са двете плочи, такива записи в базата данни, както и правилата, които носят техните методи на лечение. Комбинацията от тези качества води до факта, че като система практически познания Prolog се акумулират (данни, така и правила). Ето защо, Пролог счита природната среда за натрупване на знания и обучение на студенти и ученици с принципите на логиката програмиране.

Основни понятия в Prolog са факти, дедуктивно и заявки, което позволява да се опише на базата от знания. процедури за извеждане, и вземането на решения.

Prolog програма описва връзката е определено от предложенията. Както във всеки друг език, ориентирани символичен изчисление. предлага линия на условията, които от своя страна са разделени на атоми, броят на променливите и структури. Atom записан с малка буква или ограден в кавички, когато се изисква запис с главна буква.

Променливите се записват с главни букви се различава от променливи в процедурните езици за програмиране, те не са свързани с конкретна клетка на паметта, а по-скоро по-близо до математическа променлива.

Структурите представляват множество от условия в скоби, включително други структури. Структурата е обозначен с името (functor), който е разположен преди скобите.

Друг проект е даден списък, чиито елементи са затворени в квадратни скоби. В основата на списъци в Prolog са свързани списъци.

Правила в Prolog е написана под формата на дедуктивно с логичното заключение, и списъка на логически условия. В чист Prolog предлага ограничен клауза рог:

и се чете, както следва: "Функция TRUE, ако тялото е вярно." правило тяло съдържа препратки към предикати, които се наричат ​​цели правилото е.

Вградени предикати / 2 стойност е операторът с два аргумента. Тя определя връзката на целите си. / 2 определя дизюнкция оператор.

Фактите, както са описани от Prolog логически предикати с конкретни стойности. Фактите като бази от знания Prolog представляват специфична информация (знание). Общата информация и знания в Prolog набор от правила за извеждане (определения) и набор от правила за извеждане (определения) на конкретни факти и обобщената информация. Предложенията с празен тяло се наричат ​​факти. Пример факт:

Този факт е еквивалентно на правилото:

Prologue критикуван, предимно за непълна декларативен характер: създаването на повече или по-малко сложни и практически полезни програми Prolog в изцяло декларативен стил е почти невъзможно, програмист е принуден да прибегне до процесуално рецепция, което води до рязко увеличаване на сложността на създаване и отстраняване на грешки програми, както и Лошо контролирана междинни резултати. [2]

Друг често критикувана функция на езика е липсата на писане (докато в Visual Prolog - езикови разширения обектно-ориентиран - реализира силен пишете).

Езикът е предварително определен ред на прекосява "в дълбочина" решения и стандартизирани оператори, което позволява да се намеси в този процес (като например рязането на оператора или клон. ->). Тази архитектура го прави трудно за автоматично паралелно извършване на програми, които да позволят използването при намирането на решения на множество процесори или възли в мрежата.

здравей, свят

Свързани статии

Подкрепете проекта - споделете линка, благодаря!