2002-07-31 23:34:42 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								<?xml version="1.0" encoding="iso-8859-1"?> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								<?xml-stylesheet type="text/css" href="styles.css" ?> 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
							 
						 
					
						
							
								
									
										
										
										
											2002-07-31 23:34:42 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< html  xmlns = "http://www.w3.org/1999/xhtml"  lang = "en"  xml:lang = "en" > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< head > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< meta  http-equiv = "content-type"  content = "text/html; charset=iso-8859-1"  / > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
									< title > Logtalk Glossary< / title > 
							 
						 
					
						
							
								
									
										
										
										
											2002-07-31 23:34:42 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
									< link  rel = "stylesheet"  href = "styles.css"  type = "text/css"  / > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / head > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< body > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< div  class = "navtop" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< a  href = "index.html" > contents< / a > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< h1 > Glossary< / h1 > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > ancestor< / strong > < a  name = "ancestor" > < / a > < / 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 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > category< / strong > < a  name = "category" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > class< / strong > < a  name = "class" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > abstract class< / strong > < a  name = "abstractclass" > < / a > < / 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 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > metaclass< / strong > < a  name = "metaclass" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > subclass< / strong > < a  name = "subclass" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A class that is a specialization, direct or indirectly, of another class.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > superclass< / strong > < a  name = "superclass" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2004-07-25 18:47:43 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A class from each another class is a specialization (directly or indirectly via another class).< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > directive< / strong > < a  name = "directive" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-08-08 12:13:45 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > A Prolog term that affects the interpretation of Prolog code. Directives are represented using the < code > :-/1< / code >  prefix operator.< / dd > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > entity directive< / strong > < a  name = "entity_directive" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > predicate directive< / strong > < a  name = "predicate_directive" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A directive that affects how predicates are called or compiled.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-08-08 12:13:45 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > source file directive< / strong > < a  name = "source_file_directive" > < / a > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > A directive that affects how a source file is compiled.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > encapsulation< / strong > < a  name = "encapsulation" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > entity< / strong > < a  name = "entity" > < / a > < / 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 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > event< / strong > < a  name = "event" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-10-17 22:37:16 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > grammar rule< / strong > < a  name = "grammar_rule" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > grammar rule non-terminal< / strong > < a  name = "non_terminal" > < / a > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > grammar rule terminal< / strong > < a  name = "terminal" > < / a > < / dt > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > A word or a basic symbol of a language.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > identity< / strong > < a  name = "identity" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > Property of an entity that distinguish it from every other entity. In Logtalk an entity identity can be an atom or a compound term. All Logtalk entities, objects, protocols and categories share the same name space.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > inheritance< / strong > < a  name = "inheritance" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > private inheritance< / strong > < a  name = "private_inheritance" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > All public and protected predicates are inherited as private predicates.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > protected inheritance< / strong > < a  name = "protected_inheritance" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > public inheritance< / strong > < a  name = "public_inheritance" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > All inherited predicates maintain the declared scope.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > instance< / strong > < a  name = "instance" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > instantiation< / strong > < a  name = "instantiation" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2005-08-08 12:13:45 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dd > The process of creating a new class instance. In Logtalk 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 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > message< / strong > < a  name = "message" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > metainterpreter< / strong > < a  name = "metainterpreter" > < / a > < / 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 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > method< / strong > < a  name = "method" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > monitor< / strong > < a  name = "monitor" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > Any object that is notified when a spied event occurs. The spied events can be set by the monitor or by any other object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > object< / strong > < a  name = "object" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > An entity characterized by an identity and a set of predicate directives and clauses. In Logtalk objects can be either static or dynamic, like any other Prolog code.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< dd > < dl > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > parametric object< / strong > < a  name = "parametric" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > parent< / strong > < a  name = "parent" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > An object that is extended by another object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > predicate< / strong > < a  name = "predicate" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > local predicate< / strong > < a  name = "local_predicate" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< 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 methods.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > metapredicate< / strong > < a  name = "metapredicate" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +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 metapredicates.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > private predicate< / strong > < a  name = "private_predicate" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > protected predicate< / strong > < a  name = "protected_predicate" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > public predicate< / strong > < a  name = "public_predicate" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A predicate that can be called from any object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > visible predicate< / strong > < a  name = "visible_predicate" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A predicate that is declared for an object, a built-in method, or a Prolog or Logtalk built-in predicate.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / dl > < / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > profiler< / strong > < a  name = "profiler" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A program that collects data about other program performance.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > protocol< / strong > < a  name = "protocol" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > prototype< / strong > < a  name = "protocol" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > A self-describing object that may extend or be extended by other objects.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > self< / strong > < a  name = "self" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > The original object that received the message under execution.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > sender< / strong > < a  name = "sender" > < / a > < / dt > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< dd > An object that sends a message to other object.< / dd > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > specialization< / strong > < a  name = "specialization" > < / a > < / 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 > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< dt  class = "glossary" > < strong > this< / strong > < a  name = "this" > < / a > < / 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 = "navbottom" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< div  class = "copyright" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								Copyright ©  < a  href = "mailto:pmoura@logtalk.org" > Paulo Moura< / a >  —  < a  href = "http://www.logtalk.org" > Logtalk.org< / a > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< div  class = "footer" > 
							 
						 
					
						
							
								
									
										
										
										
											2005-08-08 12:13:45 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< p > < span  class = "bleft" > < a  href = "http://validator.w3.org/check/referer" > XHTML< / a >  + < a  href = "http://jigsaw.w3.org/css-validator/check/referer" > CSS< / a > < / span > < span  class = "bright" > Last updated on: August 5, 2005< / span > < / p > 
							 
						 
					
						
							
								
									
										
										
										
											2003-12-30 13:33:51 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / body > 
							 
						 
					
						
							
								
									
										
										
										
											2001-06-06 19:40:57 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / html >