flora-commits Mailing List for Flora-2
Brought to you by:
kifer
You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(59) |
Jun
(43) |
Jul
(4) |
Aug
(4) |
Sep
(102) |
Oct
(20) |
Nov
(47) |
Dec
(32) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(24) |
Feb
(34) |
Mar
(72) |
Apr
(36) |
May
(10) |
Jun
(46) |
Jul
(36) |
Aug
(24) |
Sep
(37) |
Oct
(27) |
Nov
(43) |
Dec
(40) |
| 2004 |
Jan
(35) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(30) |
Aug
(83) |
Sep
(68) |
Oct
(38) |
Nov
(3) |
Dec
(7) |
| 2005 |
Jan
(9) |
Feb
(31) |
Mar
(46) |
Apr
(73) |
May
(21) |
Jun
(1) |
Jul
(32) |
Aug
(33) |
Sep
(3) |
Oct
(28) |
Nov
(4) |
Dec
(23) |
| 2006 |
Jan
(22) |
Feb
(2) |
Mar
(12) |
Apr
(23) |
May
(73) |
Jun
(14) |
Jul
|
Aug
(20) |
Sep
(14) |
Oct
(5) |
Nov
|
Dec
(14) |
| 2007 |
Jan
(54) |
Feb
(81) |
Mar
(286) |
Apr
(313) |
May
(154) |
Jun
(85) |
Jul
(8) |
Aug
(11) |
Sep
(12) |
Oct
(14) |
Nov
(6) |
Dec
(6) |
| 2008 |
Jan
|
Feb
|
Mar
(1) |
Apr
(12) |
May
(4) |
Jun
|
Jul
(13) |
Aug
(22) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(46) |
Jun
(43) |
Jul
(46) |
Aug
(9) |
Sep
(13) |
Oct
(31) |
Nov
(42) |
Dec
(18) |
| 2014 |
Jan
(7) |
Feb
(7) |
Mar
(11) |
Apr
(13) |
May
(16) |
Jun
(6) |
Jul
(17) |
Aug
|
Sep
(2) |
Oct
|
Nov
(1) |
Dec
|
| 2015 |
Jan
|
Feb
(17) |
Mar
(4) |
Apr
(3) |
May
(2) |
Jun
(3) |
Jul
(2) |
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(2) |
| 2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
1
|
2
|
3
|
|
4
|
5
|
6
|
7
|
8
|
9
|
10
(3) |
|
11
|
12
|
13
|
14
|
15
|
16
|
17
(1) |
|
18
|
19
|
20
|
21
(2) |
22
|
23
|
24
|
|
25
|
26
|
27
|
28
|
29
|
30
|
|
|
From: Michael K. <ki...@us...> - 2007-11-21 01:16:51
|
Update of /cvsroot/flora/flora2/syslib In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv13414/syslib Modified Files: flrhooks.P Log Message: better comments for flora_call_hooks Index: flrhooks.P =================================================================== RCS file: /cvsroot/flora/flora2/syslib/flrhooks.P,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- flrhooks.P 5 Jun 2007 06:51:06 -0000 1.6 +++ flrhooks.P 21 Nov 2007 01:16:53 -0000 1.7 @@ -350,13 +350,19 @@ /* - flora_call_hooks(+Module,+Action,+Arg,+HookType) + flora_call_hooks(+Module,+Action,+Arg,+HookType,-AroundHookLink) Call all before/after hooks for Action according to their priority. The higher priority number means that that hook will be called earlier. Arg is the parameter to pass to the hook. There is always only one parameter (but it can be a complex term). + AroundHookLink is either (BeforeHookList,_) - for before-hooks + or (AfterHookList,_), for after hooks. + (BeforeHookList,_) and (AfterHookList,_) are unified when before and + after hooks are called, and in this way parameters are passed between the + around-hooks. + Note: around-hooks are both before- and after-hooks, so they are also called. */ flora_call_hooks(Module,Action,_Arg,_HookType,_) :- |
|
From: Michael K. <ki...@us...> - 2007-11-21 01:16:18
|
Update of /cvsroot/flora/flora2/docs In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv13218/docs Modified Files: flora2.tex Log Message: removed obsolete paragraph Index: flora2.tex =================================================================== RCS file: /cvsroot/flora/flora2/docs/flora2.tex,v retrieving revision 1.185 retrieving revision 1.186 diff -u -d -r1.185 -r1.186 --- flora2.tex 10 Nov 2007 17:24:07 -0000 1.185 +++ flora2.tex 21 Nov 2007 01:16:19 -0000 1.186 @@ -8925,10 +8925,6 @@ ~~~ \\ Same as above, except that a module is also given. However, unless the module is {\tt main}, this directive acts as a no-op. -\item[{\tt table {\it functor/arity}, ..., {\it functor/arity}}] - ~~~\\ - Requests that the specified first order predicates must be tabled. - \end{description} |
|
From: Michael K. <ki...@us...> - 2007-11-17 04:39:05
|
Update of /cvsroot/flora/flora2/syslib In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv9869 Modified Files: flrstoragebase.P Log Message: made flrstoragebase use the storage module of xsb Index: flrstoragebase.P =================================================================== RCS file: /cvsroot/flora/flora2/syslib/flrstoragebase.P,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- flrstoragebase.P 7 Aug 2007 15:59:04 -0000 1.13 +++ flrstoragebase.P 17 Nov 2007 04:39:06 -0000 1.14 @@ -47,22 +47,26 @@ flora_storage_find_fact/2. -:- import trie_intern/5, trie_interned/4, trie_unintern_nr/2, - unmark_uninterned_nr/2, - delete_trie/1, - trie_reclaim_uninterned_nr/1 - from intern. +:- import + storage_insert_fact_bt/5, + storage_insert_fact/3, + storage_delete_fact_bt/5, + storage_delete_fact/3, + storage_find_fact/2, + storage_reclaim_space/1, + storage_delete_all/1, + storage_commit/1 + from storage. :- import flora_refresh_tables/1 from flrtables. :- import flora_call_hooks/5 from flrhooks. - :- import flora_trim_last/2 from flrtrim. :- import - flora_storage_module/2, - flora_is_fdb_storage/1 + flora_storage_module/2, + flora_is_fdb_storage/1 from flrwrapper. @@ -139,48 +143,24 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Here we need to implement backtrackable updates using assert and retract_nr -#include "storage_xsb_defs.h" -#include "builtin.h" - - -storage_builtin(_BuiltinNumber,_StorageName,_Handle,_Snapshot,_Changed) :- - '_$builtin'(STORAGE_BUILTIN). - %% Inserts facts. On backtracking, the fact is deleted. flora_storage_insert_fact_bt(StorageName,Fact,Call,Inserted) :- - triehandle_for_storage(StorageName,H,Snapshot), - trie_intern(Fact, H, Leaf, New, _), - (New == 0 - -> Inserted=1, % new fact inserted - mark_storage_changed_bt(StorageName), - ( true - ; %% On backtracking - triehandle_for_storage(StorageName,_,NewSnapshot), - (NewSnapshot =< Snapshot - -> trie_unintern_nr(H, Leaf), - %% Here we only refresh on backtracking. Normal - %% refresh is done in flrbtdbop.P and flrdbop.P - %% Can't be done here (esp. in flora_storage_insert_fact: - %% this predicate is too low level and is used elsewhere. - %% Refreshig of tables at this low level can be dangerous - flora_refresh_tables(Call), - fail - ) - ) - ; Inserted=0 % fact was already there: no action - ). + storage_insert_fact_bt(StorageName,Fact,Inserted, + true, + %% Refresh on backtracking. Forward refresh is + %% done in flrbtdbop.P and flrdbop.P + %% Forward refresh can't be done here, since + %% flora_storage_insert_fact is too low level + %% and is used elsewhere. Refreshing of tables + %% on forward execution here is too low level + %% and can be dangerous + flora_refresh_tables(Call)). %% Nonbacktrackable insert flora_storage_insert_fact(StorageName,Fact,Inserted) :- - triehandle_for_storage(StorageName,H), - trie_intern(Fact, H, _Leaf, New, _), - !, - (New == 0 - -> Inserted=1 % new fact inserted - ; Inserted=0 % fact was already there: no action - ). + storage_insert_fact(StorageName,Fact,Inserted). %% Backtrackable delete. @@ -188,85 +168,40 @@ %% On backtracking: unmarks facts that are marked for deletion flora_storage_delete_fact_bt(StorageName,Fact,Call,Deleted) :- - triehandle_for_storage(StorageName,H,Snapshot), - (trie_interned(Fact, H, Leaf, _) - -> Deleted=1, % existing fact deleted - mark_storage_changed_bt(StorageName), - ( trie_unintern_nr(H, Leaf) - ; %% On backtracking - triehandle_for_storage(StorageName,_,NewSnapshot), - (NewSnapshot =< Snapshot - -> unmark_uninterned_nr(H, Leaf), - %% Here we only refresh on backtracking. Normal - %% refresh is done in flrbtdbop.P and flrdbop.P - %% Can't be done here (esp. in flora_storage_delete_fact: - %% this predicate is too low level and is used elsewhere. - %% Refreshig of tables at this low level can be dangerous - flora_refresh_tables(Call), - fail - ) - ) - ; Deleted=0 % non-existing fact: no action - ). + storage_delete_fact_bt(StorageName,Fact,Deleted, + true, + %% Refresh on backtracking. Forward refresh is + %% done in flrbtdbop.P and flrdbop.P + %% Forward refresh can't be done here, since + %% flora_storage_delete_fact is too low level + %% and is used elsewhere. Refreshing of tables + %% on forward execution here is too low level + %% and can be dangerous + flora_refresh_tables(Call)). %% Nonbacktrackable delete flora_storage_delete_fact(StorageName,Fact,Deleted) :- - triehandle_for_storage(StorageName,H), - !, - (trie_interned(Fact, H, Leaf, _) - -> Deleted=1, % existing fact deleted - trie_unintern_nr(H, Leaf) - ; Deleted=0 % non-existing fact: no action - ). + storage_delete_fact(StorageName,Fact,Deleted). %% deletes the whole trie %% exported -flora_db_delete_all(StorageName) :- - triehandle_for_storage(StorageName,H), - !, - storage_builtin(DESTROY_STORAGE_HANDLE,StorageName,_,_,_), - delete_trie(H). +flora_db_delete_all(StorageName) :- storage_delete_all(StorageName). %% Find fact in storage -flora_storage_find_fact(StorageName,Fact) :- - triehandle_for_storage(StorageName,H), - !, - trie_interned(Fact, H, _, _). - +flora_storage_find_fact(StorageName,Fct) :- storage_find_fact(StorageName,Fct). %% Commit changes to the storage trie associated with StorageName %% (only if storage has been changed) %% exported -flora_db_commit(StorageName) :- - ( storage_builtin(INCREMENT_STORAGE_SNAPSHOT,StorageName,_,_,_), - ! - %% don't backtrack over it - ; fail - ). +flora_db_commit(StorageName) :- storage_commit(StorageName). %% Reclaims space by removing nodes from the backtrackable insert/keypair trie %% which were marked for deletion. This should be done only at the top %% level of a query. %% exported -flora_db_reclaim_space(StorageName) :- - triehandle_for_storage(StorageName,H), - !, - trie_reclaim_uninterned_nr(H). - - -%% Create a new trie or use an existing one -%% that is already saved as a property of StorageName -triehandle_for_storage(StorageName,Handle,Snapshot) :- - storage_builtin(GET_STORAGE_HANDLE,StorageName,Handle,Snapshot,_). -triehandle_for_storage(StorageName,Handle) :- - storage_builtin(GET_STORAGE_HANDLE,StorageName,Handle,_,_). - - -%% This one seems no longer used. Check!!! -mark_storage_changed_bt(StorageName) :- - storage_builtin(MARK_STORAGE_CHANGED,StorageName,_,_,_). +flora_db_reclaim_space(StorageName) :- storage_reclaim_space(StorageName). %% Call Goal, if StorageName is FDB storage (and not FLD storage) |
|
From: Michael K. <ki...@us...> - 2007-11-10 17:24:15
|
Update of /cvsroot/flora/flora2/docs In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv3713/docs Modified Files: flora2.tex Log Message: typo fixes Index: flora2.tex =================================================================== RCS file: /cvsroot/flora/flora2/docs/flora2.tex,v retrieving revision 1.184 retrieving revision 1.185 diff -u -d -r1.184 -r1.185 --- flora2.tex 26 Oct 2007 05:14:02 -0000 1.184 +++ flora2.tex 10 Nov 2007 17:24:07 -0000 1.185 @@ -3322,6 +3322,8 @@ %% } %% + \index{meta-unification operator $\sim$} + \index{$\sim$!meta-unification operator} For instance, suppose {\tt p(a(b))} is true, and consider the following query: %% @@ -3461,7 +3463,7 @@ \paragraph{Meta-unification.} \index{meta-unification operator $\sim$} -\index{$\sim$ meta-unification operator} +\index{$\sim$!meta-unification operator} %% In \FLORA, variables can be bound to both formulas and terms. For instance, in {\tt ?X = p(a)}, {\tt p(a)} is viewed as a term and {\tt ?X} is bound to @@ -5041,6 +5043,8 @@ \end{verbatim} \end{quote} %% + \index{meta-unification operator $\sim$} + \index{$\sim$!meta-unification operator} The following query fails because {\tt \%?X} and {\tt ?X} represent the same variable: the first conjunct determines the binding for {\tt ?X}, and this binding does not match the expression on the right side of @@ -6170,6 +6174,10 @@ {\tt flora2 ?- ?X $\sim$ a[b->c], insert\{?X\}.} \end{quote} %% + \index{meta-unification operator $\sim$} + \index{$\sim$!meta-unification operator} + Here $\sim$ is a meta-unification operator described in + Section~\ref{sec-meta-reification}. One use for this facility is when one module, $\tt foo$, provides methods that allow other modules to perform update operations on objects in {\tt foo}. For instance, $\tt foo$ can have a rule @@ -10064,11 +10072,11 @@ The main purpose of the \FLORA shell is to allow the evaluation of ad-hoc \fl queries. For example, after consulting and loading the -the file \texttt{default.flr} from the demo directory by launching +file \texttt{default.flr} from the demo directory by launching the command \texttt{?-~\_demo(default).}, pose the following query and see what happens. \begin{verbatim} - flora2 ?- ?X..kids[ // Whose kids + flora2 ?- ?X.kids[ // Whose kids self -> ?K, // ... (list them by name) hobbies -> // ... have hobbies ?H:dangerous_hobby // ... that are dangerous? |
|
From: Michael K. <ki...@us...> - 2007-11-10 17:20:39
|
Update of /cvsroot/flora/flora2/p2h/windows In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv1857/p2h/windows Modified Files: prolog2hilog.dll Log Message: bug fix: flora_user_storage_name Index: prolog2hilog.dll =================================================================== RCS file: /cvsroot/flora/flora2/p2h/windows/prolog2hilog.dll,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 Binary files /tmp/cvsiS2pX0 and /tmp/cvsvhQKx6 differ |
|
From: Michael K. <ki...@us...> - 2007-11-10 17:20:10
|
Update of /cvsroot/flora/flora2/lib In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv1857/lib Modified Files: flrstorage.flr Log Message: bug fix: flora_user_storage_name Index: flrstorage.flr =================================================================== RCS file: /cvsroot/flora/flora2/lib/flrstorage.flr,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- flrstorage.flr 20 Jan 2007 03:58:22 -0000 1.10 +++ flrstorage.flr 10 Nov 2007 17:20:00 -0000 1.11 @@ -34,12 +34,12 @@ // This commit is only for user modules %commit(?Module) :- - flora_user_storage_name(?Module,?StorageName)@_plg(flrwrapper), + flora_fdb_storage_name(?Module,?StorageName)@_plg(flrwrapper), flora_db_commit(?StorageName)@_plg(flrstoragebase), flora_db_reclaim_space(?StorageName)@_plg(flrstoragebase). %purgedb(?Module) :- - flora_user_storage_name(?Module,?StorageName)@_plg(flrwrapper), + flora_fdb_storage_name(?Module,?StorageName)@_plg(flrwrapper), flora_db_delete_all(?StorageName)@_plg(flrstoragebase). |