a few typos corrected
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@82 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
parent
12db2be4aa
commit
8148b93679
24
docs/yap.tex
24
docs/yap.tex
@ -1,4 +1,4 @@
|
||||
\input texinfo @c -*-texinfo-*-
|
||||
\input texinfo @c -*- mode: texinfo; coding: latin-1; -*-
|
||||
|
||||
@c %**start of header
|
||||
@setfilename yap.info
|
||||
@ -7381,10 +7381,10 @@ number is Operating System dependent.
|
||||
@cnindex file_property/2
|
||||
The atom @var{File} corresponds to an existing file, and @var{Property}
|
||||
will be unified with a property of this file. The poperties are of the
|
||||
form @code{type(@var{Type))}, which gives whether the file is a regular
|
||||
form @code{type(@var{Type})}, which gives whether the file is a regular
|
||||
file, a directory, a fifo file, or of unknown type;
|
||||
@code{size(@var{Size))}, with gives the size for a file, and
|
||||
@code{mod_time(@var{Time))}, which gives the last time a file was
|
||||
@code{size(@var{Size})}, with gives the size for a file, and
|
||||
@code{mod_time(@var{Time})}, which gives the last time a file was
|
||||
modified according to some Operating System dependent
|
||||
timestamp. Properties can be obtained through backtracking:
|
||||
|
||||
@ -8048,13 +8048,13 @@ suspended.
|
||||
YAP now supports the attributed variables packaged developed at OFAI by
|
||||
Christian Holzbaur. Attributes are a means of declaring that an
|
||||
arbitrary term is a property for a variable. These properties can be
|
||||
update during forward execution. Moreover, the unification algorithm is
|
||||
updated during forward execution. Moreover, the unification algorithm is
|
||||
aware of attributed variables and will call user defined handlers when
|
||||
trying to unify these variables.
|
||||
|
||||
Attributed variables provide an elegant abstraction over which one can
|
||||
extend Prolog systems. Their main application so far has been in
|
||||
implement constraint handlers, such as Holzbaur's CLPQR and Fruewirth
|
||||
implementing constraint handlers, such as Holzbaur's CLPQR and Fruewirth
|
||||
and Holzbaur's CHR, but other applications have been proposed in the
|
||||
literature.
|
||||
|
||||
@ -8108,7 +8108,7 @@ where each @var{AttributeSpec} has the form (@var{Name}/@var{Arity}).
|
||||
One single such declaration is allowed per module @var{Module}.
|
||||
|
||||
Although the YAP module system is predicate based, attributes are local
|
||||
to modules. This is is implemented by rewriting all calls to the
|
||||
to modules. This is implemented by rewriting all calls to the
|
||||
builtins that manipulate attributes so that attribute names are
|
||||
preprocessed depending on the module. The @code{user:goal_expansion/3}
|
||||
mechanism is used for this purpose.
|
||||
@ -8220,8 +8220,8 @@ a @var{Goal}. Should fail when no interpretation is available.
|
||||
|
||||
@node Projecting Attributes, Attribute Examples, Displaying Attributes, Attributed Variables
|
||||
|
||||
Constraint solvers must be able project a set of constraints to a set of
|
||||
variables. This is useful when displaying the solution to a goal, but
|
||||
Constraint solvers must be able to project a set of constraints to a set
|
||||
of variables. This is useful when displaying the solution to a goal, but
|
||||
may also be used to manipulate computations. The user-defined
|
||||
@code{project_attributes/2} is responsible for implementing this
|
||||
projection.
|
||||
@ -8253,7 +8253,7 @@ and these constraints are the ones that will have an
|
||||
@node Attribute Examples, ,Projecting Attributes, Attributed Variables
|
||||
|
||||
The following two examples example is taken from the SICStus Prolog manual. It
|
||||
sketchs the implementation of simple a finite domain ``solver''. Note
|
||||
sketches the implementation of a simple finite domain ``solver''. Note
|
||||
that an industrial strength solver would have to provide a wider range
|
||||
of functionality and that it quite likely would utilize a more efficient
|
||||
representation for the domains proper. The module exports a single
|
||||
@ -8317,7 +8317,7 @@ domain(X, List) :-
|
||||
|
||||
Note that the ``implied binding'' @code{Other=El} was deferred until after
|
||||
the completion of @code{verify_attribute/3}. Otherwise, there might be a
|
||||
danger of recursively invoke @code{verify_attribute/3}, which might bind
|
||||
danger of recursively invoking @code{verify_attribute/3}, which might bind
|
||||
@code{Var}, which is not allowed inside the scope of @code{verify_attribute/3}.
|
||||
Deferring unifications into the third argument of @code{verify_attribute/3}
|
||||
effectively serializes th calls to @code{verify_attribute/3}.
|
||||
@ -13046,5 +13046,3 @@ The following is the list of the declarations of the predefined operators:
|
||||
@contents
|
||||
|
||||
@bye
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user