2006-02-10 17:44:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								<?xml version="1.0" encoding="utf-8"?> 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< html  xmlns = "http://www.w3.org/1999/xhtml"  xml:lang = "en" > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< head > 
							 
						 
					
						
							
								
									
										
										
										
											2006-02-10 17:44:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< meta  http-equiv = "content-type"  content = "application/xml+xhtml; charset=utf-8"  / > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< title > Logtalk: Glossary< / title > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									< link  rel = "stylesheet"  href = "screen.css"  type = "text/css"  media = "screen" / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									< link  rel = "stylesheet"  href = "print.css"  type = "text/css"  media = "print" / > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / head > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< body > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< div  class = "top-left" > Logtalk documentation< / div >  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "top-right" > Glossary< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "bottom-left" > < span  class = "page" / > < / div >  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "bottom-right" > < span  class = "page" / > < / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "navtop" > < a  href = "index.html" > contents< / a > < / div > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< h1 > Glossary< / h1 > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "ancestor"  class = "glossary" > < strong > ancestor< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-08-08 12:13:45 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A class or parent that contributes (via inheritance) to the definition of an object. For class-based hierarchies, the ancestors of an object are its class(es) and all the superclasses of its class(es). For prototype-based hierarchies, the ancestors of an object are its parent(s) and the ancestors of its parent(s).< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "category"  class = "glossary" > < strong > category< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A set of predicates directives and clauses that can be imported by any object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "class"  class = "glossary" > < strong > class< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > An object that defines the common predicates of a set of objects (its instances).< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "abstractclass"  class = "glossary" > < strong > abstract class< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2004-07-25 18:47:43 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A class that cannot be instantiated. Usually used to store common predicates that are inherited by other classes.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "metaclass"  class = "glossary" > < strong > metaclass< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > The class of a class, when we see it as an object. Metaclass instances are themselves classes. In a reflexive system any metaclass is also an object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "subclass"  class = "glossary" > < strong > subclass< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A class that is a specialization, direct or indirectly, of another class.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "superclass"  class = "glossary" > < strong > superclass< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A class from which another class is a specialization (directly or indirectly via another class).< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "directive"  class = "glossary" > < strong > directive< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > A Prolog/Logtalk term that affects the interpretation of Prolog/Logtalk code. Directives are represented using the < code > :-/1< / code >  prefix operator.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "entity_directive"  class = "glossary" > < strong > entity directive< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A directive that affects how Logtalk entities (objects, protocols, or categories) are used or compiled.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "predicate_directive"  class = "glossary" > < strong > predicate directive< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A directive that affects how predicates are called or compiled.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "source_file_directive"  class = "glossary" > < strong > source file directive< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-08-08 12:13:45 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A directive that affects how a source file is compiled.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "encapsulation"  class = "glossary" > < strong > encapsulation< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > The hiding of an object implementation. This promotes software reuse by isolating users from implementation details.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "entity"  class = "glossary" > < strong > entity< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2004-07-25 18:47:43 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > Generic name for Logtalk compilation units: objects, categories, and protocols.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "event"  class = "glossary" > < strong > event< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > The sending of a message to an object. An event can be expressed as an ordered tuple: < code > (Event, Object, Message, Sender)< / code > . Logtalk distinguish between the sending of a message - < code > before< / code >  event - and the return of control to the sender - < code > after< / code >  event.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "grammar_rule"  class = "glossary" > < strong > grammar rule< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-08-08 12:13:45 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > An alternative notation for predicates used to parse or generate sentences on some language. This notation hides the arguments used to pass the lists of tokens being processed, thus simplifying the representation of grammars. Grammar rules are represented using the infix operator < code > --> /2< / code >  instead of the operator used on predicate clauses (< code > :-/2< / code > ).< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2004-10-17 22:37:16 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "non_terminal"  class = "glossary" > < strong > grammar rule non-terminal< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2004-10-17 22:37:16 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A syntactic category of words of phrases. A non-terminal is identified by its name and number of arguments using the notation < code > < name> //< nargs> < / code > .< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "terminal"  class = "glossary" > < strong > grammar rule terminal< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2004-10-17 22:37:16 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A word or a basic symbol of a language.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "identity"  class = "glossary" > < strong > identity< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > Property of an entity that distinguishes it from every other entity. In Logtalk, an object identity can be an atom or a compound term. Category and protocol identities must be atoms. All Logtalk entities (objects, protocols, and categories) share the same name space.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "inheritance"  class = "glossary" > < strong > inheritance< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > An object inherits predicate directives and clauses from other objects that it extends or specializes. If an object extends other object then we have a prototype-based inheritance. If an object specializes or instantiates another object we have a class-based inheritance.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "private_inheritance"  class = "glossary" > < strong > private inheritance< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > All public and protected predicates are inherited as private predicates.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "protected_inheritance"  class = "glossary" > < strong > protected inheritance< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > All public predicates are inherited as protected. No change for protected or private predicates.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "public_inheritance"  class = "glossary" > < strong > public inheritance< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > All inherited predicates maintain the declared scope.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "instance"  class = "glossary" > < strong > instance< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > The same as object. This term is used when we want to emphasize that an object characteristics are defined by another object (its class).< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "instantiation"  class = "glossary" > < strong > instantiation< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > The process of creating a new class instance. In Logtalk, this does not necessarily implies dynamic creation of an object at runtime; an instance may also be defined as a static object in a source file.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "library"  class = "glossary" > < strong > library< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A directory containing source files. The directory name is used as the library name.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "message"  class = "glossary" > < strong > message< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A request for a service, sent to an object. In more logical terms, a message can be seen as a request for proof construction using an object's predicates.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "metainterpreter"  class = "glossary" > < strong > metainterpreter< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2004-07-08 23:48:59 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A program capable of running other programs written in the same language.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "method"  class = "glossary" > < strong > method< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > Set of predicate clauses used to answer a message sent to an object. Logtalk uses dynamic binding to find which method to run to answer a message.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "monitor"  class = "glossary" > < strong > monitor< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > Any object that is notified when a spied event occurs. The spied events can be set by the monitor itself or by any other object.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "object"  class = "glossary" > < strong > object< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > An entity characterized by an identity and a set of predicate directives and clauses. Logtalk objects can be either static or dynamic. Logtalk objects can play the role of classes, instances, or prototypes.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "parametric"  class = "glossary" > < strong > parametric object< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > An object whose name is a compound term containing free variables that can be used to parameterize the object predicates.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "parametric_proxy"  class = "glossary" > < strong > parametric object proxy< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > A compound term with the same functor and usually with the same number of arguments as the identifier of a parametric object.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2006-03-26 17:31:34 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "parent"  class = "glossary" > < strong > parent< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > A prototype that is extended by another prototype.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "predicate"  class = "glossary" > < strong > predicate< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2002-08-26 16:45:50 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > Predicates describe what is true about the application domain. A predicate is identified by its name and number of arguments using the notation < code > < name> /< nargs> < / code > .< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "local_predicate"  class = "glossary" > < strong > local predicate< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > A predicate that is defined in an object (or in a category) but that is not listed in a scope directive. These predicates behave like private predicates but are invisible to the reflection built-in methods. Local predicates are usually auxiliary predicates, only relevant to the entity where they are defined.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "meta-predicate"  class = "glossary" > < strong > meta-predicate< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2006-11-07 17:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A predicate where one of its arguments will be called as a goal. For instance, < code > findall/3< / code >  and < code > call/1< / code >  are Prolog built-ins meta-predicates.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "private_predicate"  class = "glossary" > < strong > private predicate< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A predicate that can only be called from the object that contains the scope directive.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "protected_predicate"  class = "glossary" > < strong > protected predicate< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A predicate that can only be called from the object containing the scope directive or from an object that inherits the predicate.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "public_predicate"  class = "glossary" > < strong > public predicate< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A predicate that can be called from any object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "visible_predicate"  class = "glossary" > < strong > visible predicate< / strong > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > A predicate that is declared for an object, a built-in method, or a Prolog/Logtalk built-in predicate.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "profiler"  class = "glossary" > < strong > profiler< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A program that collects data about other program performance.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "protocol"  class = "glossary" > < strong > protocol< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A set of predicates directives that can be implemented by an object or a category (or extended by another protocol).< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "prototype"  class = "glossary" > < strong > prototype< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A self-describing object that may extend or be extended by other objects.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "self"  class = "glossary" > < strong > self< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > The original object that received the message under processing.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "sender"  class = "glossary" > < strong > sender< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > An object that sends a message to other object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "specialization"  class = "glossary" > < strong > specialization< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A class is specialized by constructing a new class that inherit its predicates and possibly add new ones.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  id = "this"  class = "glossary" > < strong > this< / strong > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > The object that contains the predicate clause under execution.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< div  class = "footer" > 
							 
						 
					
						
							
								
									
										
										
										
											2006-11-07 17:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< div  class = "copyright" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										< span > Copyright ©  < a  href = "mailto:pmoura@logtalk.org" > Paulo Moura< / a >  —  < a  href = "http://logtalk.org" > Logtalk.org< / a > < / span > < br / > 	
							 
						 
					
						
							
								
									
										
										
										
											2007-06-12 10:39:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
										< span > Last updated on: April 14, 2007< / span > 
							 
						 
					
						
							
								
									
										
										
										
											2006-11-07 17:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
									< div  class = "navbottom" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										< span >   < / span > < br / > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
										< span > < a  href = "http://validator.w3.org/check/referer" > XHTML< / a >  + < a  href = "http://jigsaw.w3.org/css-validator/check/referer" > CSS< / a > < / span > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< / div > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
									
										
										
										
											2005-12-24 18:00:21 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< / body > 
							 
						 
					
						
							
								
									
										
										
										
											2006-11-07 17:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / html >