Logtalk 2.16.1 files.

git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1028 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
pmoura
2004-03-23 17:51:43 +00:00
parent 4242efb73f
commit f08723a4b1
121 changed files with 343 additions and 591 deletions

View File

@@ -2,7 +2,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Logtalk - Object oriented extension to Prolog
% Release 2.16.0
% Release 2.16.1
%
% Copyright (c) 1998-2004 Paulo Moura. All Rights Reserved.
%
@@ -155,6 +155,7 @@ Obj::Pred :-
'$lgt_sender'(Context, user),
'$lgt_this'(Context, user),
'$lgt_self'(Context, Obj),
'$lgt_metavars'(Context, []),
'$lgt_tr_msg'(Obj, Pred, Call, Context),
call(Call).
@@ -412,12 +413,10 @@ abolish_object(Obj) :-
'$lgt_once'(Prefix, Dcl, Def, Super, IDcl, IDef, DDcl, DDef),
forall(
'$lgt_call'(Def, _, _, _, _, Pred),
(functor(Pred, Functor, Arity),
abolish(Functor/Arity))),
(functor(Pred, Functor, Arity), abolish(Functor/Arity))),
forall(
'$lgt_call'(DDef, _, _, _, _, Pred),
(functor(Pred, Functor, Arity),
abolish(Functor/Arity))),
(functor(Pred, Functor, Arity), abolish(Functor/Arity))),
abolish(Dcl/4),
abolish(Dcl/6),
abolish(Def/5),
@@ -457,8 +456,7 @@ abolish_category(Ctg) :-
'$lgt_once'(Prefix, Dcl, Def),
forall(
'$lgt_call'(Def, _, _, _, _, Pred),
(functor(Pred, Functor, Arity),
abolish(Functor/Arity))),
(functor(Pred, Functor, Arity), abolish(Functor/Arity))),
abolish(Dcl/4),
abolish(Dcl/5),
abolish(Def/5),
@@ -1076,7 +1074,7 @@ current_logtalk_flag(Flag, Value) :-
'$lgt_default_flag'(Flag, Value),
\+ '$lgt_flag_'(Flag, _).
current_logtalk_flag(version, version(2, 16, 0)).
current_logtalk_flag(version, version(2, 16, 1)).
@@ -2841,6 +2839,21 @@ user0__def(Pred, _, _, _, Pred, user).
throw(permission_error(define, dynamic_predicate, Functor/Arity)).
% redefinition of Logtalk message sending and external call control constructs
'$lgt_tr_head'(Term1::Term2, _, _) :-
throw(permission_error(modify, control_construct, Term1::Term2)).
'$lgt_tr_head'(::Term, _, _) :-
throw(permission_error(modify, control_construct, ::Term)).
'$lgt_tr_head'(^^Term, _, _) :-
throw(permission_error(modify, control_construct, ^^Term)).
'$lgt_tr_head'({Term}, _, _) :-
throw(permission_error(modify, control_construct, {Term})).
% redefinition of Logtalk built-in methods
'$lgt_tr_head'(Head, _, _) :-
@@ -3077,9 +3090,13 @@ user0__def(Pred, _, _, _, Pred, user).
'$lgt_self'(Context, Self),
!.
'$lgt_tr_body'(parameter(Arg, Value), true, Context) :-
'$lgt_tr_body'(parameter(Arg, Value), TPred, Context) :-
'$lgt_this'(Context, This),
arg(Arg, This, Value),
(var(This) ->
TPred = arg(Arg, This, Value)
;
arg(Arg, This, Value),
TPred = true),
!.
@@ -5028,6 +5045,10 @@ user0__def(Pred, _, _, _, Pred, user).
%
% fix calls to redefined built-in predicates
'$lgt_fix_redef_built_ins'(Pred, Pred) :-
var(Pred),
!.
'$lgt_fix_redef_built_ins'((Head:-Body), (Head:-Fixed)) :-
!,
'$lgt_fix_redef_built_ins'(Body, Fixed).
@@ -5768,7 +5789,15 @@ user0__def(Pred, _, _, _, Pred, user).
'$lgt_valid_metapred_term'(Pred) :-
nonvar(Pred),
Pred =.. [_| Args],
forall('$lgt_member'(Arg, Args), (nonvar(Arg), (Arg = (::); Arg = (*)))).
'$lgt_valid_metapred_term_args'(Args).
'$lgt_valid_metapred_term_args'([]).
'$lgt_valid_metapred_term_args'([Arg| Args]) :-
nonvar(Arg),
once((Arg = (::); Arg = (*))),
'$lgt_valid_metapred_term_args'(Args).
@@ -5777,10 +5806,17 @@ user0__def(Pred, _, _, _, Pred, user).
'$lgt_valid_mode_term'(Pred) :-
nonvar(Pred),
Pred =.. [_| Args],
forall(
'$lgt_member'(Arg, Args),
(nonvar(Arg), functor(Arg, Functor, Arity), Arity =< 1,
'$lgt_pred_arg_instantiation_mode'(Functor))).
'$lgt_valid_mode_term_args'(Args).
'$lgt_valid_mode_term_args'([]).
'$lgt_valid_mode_term_args'([Arg| Args]) :-
nonvar(Arg),
functor(Arg, Functor, Arity),
Arity =< 1,
'$lgt_pred_arg_instantiation_mode'(Functor),
'$lgt_valid_mode_term_args'(Args).

View File

@@ -1,11 +1,11 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Logtalk - Object oriented extension to Prolog
% Release 2.16.0
% Release 2.16.1
%
% configuration file for YAP Prolog 4.3.23 or later
%
% last updated: February 27, 2004
% last updated: March 10, 2004
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -175,11 +175,17 @@ forall(Generate, Test) :-
'$lgt_pl_metapredicate'(all(*, ::, *)).
'$lgt_pl_metapredicate'(call_cleanup(::)).
'$lgt_pl_metapredicate'(call_cleanup(::, ::)).
'$lgt_pl_metapredicate'(call_residue(::,*)).
'$lgt_pl_metapredicate'(call_residue(::, *)).
'$lgt_pl_metapredicate'(if(::, ::, ::)).
'$lgt_pl_metapredicate'(on_cleanup(::)).
'$lgt_pl_metapredicate'(freeze(*,::)).
'$lgt_pl_metapredicate'(freeze(*, ::)).
'$lgt_pl_metapredicate'(time_out(::, *, *)).
'$lgt_pl_metapredicate'(when(*,::)).
'$lgt_pl_metapredicate'(when(*, ::)).
'$lgt_pl_metapredicate'(thread_at_exit(::)).
'$lgt_pl_metapredicate'(thread_create(::, *, *)).
'$lgt_pl_metapredicate'(thread_signal(*, ::)).
'$lgt_pl_metapredicate'(with_mutex(*, ::)).