{"id":8902,"date":"2021-07-12T08:48:42","date_gmt":"2021-07-12T08:48:42","guid":{"rendered":"https:\/\/museo.inf.upv.es\/?page_id=8902"},"modified":"2021-07-15T10:37:47","modified_gmt":"2021-07-15T10:37:47","slug":"prolog","status":"publish","type":"page","link":"https:\/\/museo.inf.upv.es\/en\/prolog\/","title":{"rendered":"Prolog"},"content":{"rendered":"<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:75%\">\n<p><\/p>\n<h1>The <strong>Prolog<\/strong> Programming Language<\/h1>\n<p style=\"text-align: justify;\">From a project for the algorithmic treatment of natural language in the 70s <strong>Prolog<\/strong> emerged as a declarative programming language.<\/p>\n<p style=\"text-align: justify;\">Under the declarative paradigm, programs are expressed in terms of relations, in the case of Prolog they are composed of Horn clauses, of the type &#8220;<em>modus ponendo ponens&#8221;<\/em>, which describe rules such as &#8220;<em>If the antecedent is true, then the consequent&#8221;.<\/em><\/p>\n<p style=\"text-align: justify;\">In <strong>Prolog<\/strong> there are no control instructions. Its execution is based on two concepts: unification and backtracking. Thus, an execution is reduced to questioning a question against the rules described.<\/p>\n<p style=\"text-align: justify;\">Through the unification, a set of rules that can be applied are determined, <strong>Prolog<\/strong> chooses the first one, repeating the process until it determines if the question is true or false. If it is false, it goes back to the last point of choice, selecting the next applicable rule. There is a set of predefined rules to interact with the system and allow input \/ output, graphics or communication operations.<\/p>\n<p style=\"text-align: justify;\">Although <strong>Prolog<\/strong> was one of the first logic programming languages, it is still popular today, with several implementations available, both free and commercial. Prolog occupies the 26th position in the <a href=\"https:\/\/www.tiobe.com\/tiobe-index\/\">TIOBE<\/a> ranking of popularity of programming languages \u200b\u200b(2021).<\/p>\n<p><\/p>\n<p>\u00a0<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:25%\">\n<p><\/p>\n<div style=\"border-image: initial; border: 3px solid; border-color: #d1005d; padding: 10px;\">\n<h3 align=\"center\">Prolog<\/h3>\n<hr \/><strong>Born<\/strong>:1971 <br \/><strong>Evolution<\/strong>: &#8212;<br \/><strong>Influences of<\/strong>: &#8212;<br \/><strong>Influences<\/strong>: Haskell<\/div>\n<p><\/p>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>The Prolog Programming Language From a project for the algorithmic treatment of natural language in the 70s Prolog emerged as a declarative programming language. Under the declarative paradigm, programs are expressed in terms of relations, in the case of Prolog they are composed of Horn clauses, of the type &#8220;modus ponendo ponens&#8221;, which describe rules [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-8902","page","type-page","status-publish","hentry","post"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Prolog - Web del Museo de Inform\u00e1tica 2.0<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/museo.inf.upv.es\/prolog\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Prolog - Web del Museo de Inform\u00e1tica 2.0\" \/>\n<meta property=\"og:description\" content=\"The Prolog Programming Language From a project for the algorithmic treatment of natural language in the 70s Prolog emerged as a declarative programming language. Under the declarative paradigm, programs are expressed in terms of relations, in the case of Prolog they are composed of Horn clauses, of the type &#8220;modus ponendo ponens&#8221;, which describe rules [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/museo.inf.upv.es\/prolog\/\" \/>\n<meta property=\"og:site_name\" content=\"Web del Museo de Inform\u00e1tica 2.0\" \/>\n<meta property=\"article:modified_time\" content=\"2021-07-15T10:37:47+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/museo.inf.upv.es\\\/prolog\\\/\",\"url\":\"https:\\\/\\\/museo.inf.upv.es\\\/prolog\\\/\",\"name\":\"Prolog - Web del Museo de Inform\u00e1tica 2.0\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/museo.inf.upv.es\\\/#website\"},\"datePublished\":\"2021-07-12T08:48:42+00:00\",\"dateModified\":\"2021-07-15T10:37:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/museo.inf.upv.es\\\/prolog\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/museo.inf.upv.es\\\/prolog\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/museo.inf.upv.es\\\/prolog\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/museo.inf.upv.es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Prolog\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/museo.inf.upv.es\\\/#website\",\"url\":\"https:\\\/\\\/museo.inf.upv.es\\\/\",\"name\":\"Web del Museo de Inform\u00e1tica 2.0\",\"description\":\"Web del Museo de Inform\u00e1tica 2.0\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/museo.inf.upv.es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Prolog - Web del Museo de Inform\u00e1tica 2.0","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/museo.inf.upv.es\/prolog\/","og_locale":"en_US","og_type":"article","og_title":"Prolog - Web del Museo de Inform\u00e1tica 2.0","og_description":"The Prolog Programming Language From a project for the algorithmic treatment of natural language in the 70s Prolog emerged as a declarative programming language. Under the declarative paradigm, programs are expressed in terms of relations, in the case of Prolog they are composed of Horn clauses, of the type &#8220;modus ponendo ponens&#8221;, which describe rules [&hellip;]","og_url":"https:\/\/museo.inf.upv.es\/prolog\/","og_site_name":"Web del Museo de Inform\u00e1tica 2.0","article_modified_time":"2021-07-15T10:37:47+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/museo.inf.upv.es\/prolog\/","url":"https:\/\/museo.inf.upv.es\/prolog\/","name":"Prolog - Web del Museo de Inform\u00e1tica 2.0","isPartOf":{"@id":"https:\/\/museo.inf.upv.es\/#website"},"datePublished":"2021-07-12T08:48:42+00:00","dateModified":"2021-07-15T10:37:47+00:00","breadcrumb":{"@id":"https:\/\/museo.inf.upv.es\/prolog\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/museo.inf.upv.es\/prolog\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/museo.inf.upv.es\/prolog\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/museo.inf.upv.es\/"},{"@type":"ListItem","position":2,"name":"Prolog"}]},{"@type":"WebSite","@id":"https:\/\/museo.inf.upv.es\/#website","url":"https:\/\/museo.inf.upv.es\/","name":"Web del Museo de Inform\u00e1tica 2.0","description":"Web del Museo de Inform\u00e1tica 2.0","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/museo.inf.upv.es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/pages\/8902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/comments?post=8902"}],"version-history":[{"count":10,"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/pages\/8902\/revisions"}],"predecessor-version":[{"id":9215,"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/pages\/8902\/revisions\/9215"}],"wp:attachment":[{"href":"https:\/\/museo.inf.upv.es\/en\/wp-json\/wp\/v2\/media?parent=8902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}