Commit Graph

233 Commits

Author SHA1 Message Date
Joao 971ad94311 moved several global variables to misc/GLOBALS 2011-05-25 16:40:36 +01:00
Joao 8170f6d3cb Some global variables(Yap_thread_gl) in C/init.c are now declared in misc/LOCALS 2011-05-23 16:19:47 +01:00
Joao ebd0e8a7c0 change global_optyap_data macros to GLOBAL_. 2011-05-10 11:47:18 +01:00
Joao 676dd26c90 change macros in misc/GLOBALS to GLOBAL_. 2011-05-10 10:06:51 +01:00
Joao dc3c54c164 change LOCALS macros. 2011-05-04 10:11:41 +01:00
Joao f890a11377 change macros GLOBAL to Yap 2011-03-29 18:19:18 +01:00
Vítor Santos Costa ae702e6dd5 accept more version sof atom_length (SWI). 2011-03-14 20:53:48 +00:00
Vítor Santos Costa 0d6be2d858 improve string support
fix non-thread compilation.
2011-03-11 23:21:23 +00:00
Vítor Santos Costa 90d93fdbdd cache abstra machine register in threaded mode. 2011-03-07 16:02:55 +00:00
ubu32 57f5ef8cfc more bug fixes:
- make readline use packages, not old YAP code
- fix ! over backtrack cps
- fix write list
2011-02-15 05:54:19 -08:00
Vitor Santos Costa 3fe9b923cb more fixes to SWI emulation
integrate in main binary
2011-02-10 21:14:38 +00:00
Vitor Santos Costa 7e90e90239 fixes to number_codes and number_chars. 2010-10-29 10:28:25 +01:00
Vítor Santos Costa e031026a62 instrument PE locking
fix missing unlock in index_pred (if predicate had been indexed while we were
waiting).
2010-07-25 11:22:16 +01:00
Vítor Santos Costa 73c89b096d fix trouble with extension of latin1 characters. 2010-07-21 11:11:19 +01:00
Vítor Santos Costa d1599bca8d fix extra uses of mpz_ in external code. 2010-05-28 15:29:20 +01:00
Vítor Santos Costa c52dda489b be careful around 1L and friends 2010-05-11 00:18:12 +01:00
Vítor Santos Costa 11641c5f94 64 bit cleanups. 2010-05-06 15:00:44 +01:00
Ricardo Rocha 7eee5a5b56 new built-in predicates to access OPTYap statistics related to memory
usage.
2010-04-20 03:59:48 +01:00
Ricardo Rocha ddb1cd8604 adding two new modes to the yap_flag/2 and tabling_mode/2 built-in
predicates: 'local_trie' mode and 'global_trie' mode.
2010-04-16 02:08:06 +01:00
Vitor Santos Costa ccca051c48 avoid using ftell: it can be very slow on NFS. 2010-04-14 23:47:01 +01:00
Vítor Santos Costa II 9b3b304624 try again to get correct statistics on memory usage :(w 2010-04-10 21:18:35 +01:00
Vítor Santos Costa II 000f4524ea fix bad bracket 2010-03-26 16:16:05 +00:00
Vítor Santos Costa II 50b380c2aa make number_chars and atom_chars accept strings of numbers, unless if in strict iso. 2010-03-25 09:59:39 +00:00
U-Khasa\Vitor 46f0a0644c fix bad restore of operators (obs from Paulo Moura) 2010-03-01 11:52:42 -06:00
Vitor Santos Costa 5778730b62 be less enthusiastsis about writing (op). 2010-02-26 14:14:10 +00:00
Vitor Santos Costa 4355a94793 make syntax_error handling ISO compatible. 2010-02-26 13:08:38 +00:00
Vitor Santos Costa 0e9a98fa30 handle right cases where both argumnets to number_ are bound. 2010-02-26 12:01:24 +00:00
Vitor Santos Costa f4e734da34 make number_chars and atom_chars SWI/ISO compatible by default. 2010-02-26 10:04:08 +00:00
Vitor Santos Costa d78591f73c don't forget that we may have aaa and aa in substring. 2010-01-18 14:27:56 +00:00
Vitor Santos Costa 8f9f1223e7 fix sub_atom(xxx,_,_,_,'') (obs from David Vaz). 2010-01-17 00:04:17 +00:00
Vitor Santos Costa 7da431fe00 fix fix :( 2010-01-15 10:58:58 +00:00
Vitor Santos Costa 70c762c162 fix undefined predicate (made Logtalk loop). 2010-01-15 01:03:34 +00:00
Vitor Santos Costa 5b8dc25eff fix locking stuff. 2009-12-17 16:11:02 -02:00
Vitor Santos Costa ac2cf2434a prolog_flag executable (obs from Aubrey Barnard). 2009-12-10 01:16:29 +00:00
Vítor Manuel de Morais Santos Costa 506da0b1bf make write always protect operators when they are not used as operators so as to follow standard (#150). 2009-11-27 16:09:48 +00:00
Vitor Santos Costa 50d720a9c6 fix current_op/3 by walking over the chain of ops or properties and moving complex code to Prolog (obs from Paulo Moura). 2009-11-25 00:38:47 +00:00
Vitor Santos Costa 0179998d60 change Heap.h to YapHeap.h
rename $live to prolog/0 (for SWI compatibility).
2009-10-23 14:22:17 +01:00
Costa Vitor d8595221d0 optimise sub_atom when sub_atom is known. 2009-06-22 15:35:40 -05:00
Costa Vitor ec595374a6 fix allocation of temporary stack so that unification can work even for
very deep terms.
fix occur_unification_bug X = a(f(Y)).
2009-05-22 18:35:24 -05:00
Vitor Santos Costa 88b5f1a735 be careful to make sure we can hanle the interrupt. 2009-05-21 00:39:14 -05:00
Vitor Santos Costa c7066b43ec first try of setup_call_cleanup/3 and setup_call_catcher_cleanup/4 2009-05-19 23:53:14 -07:00
Vitor Santos Costa 94ebb90719 UDI patch: make it work with YAP. 2009-02-20 11:42:48 +00:00
Vítor Santos Costa c750dd94f1 indexing code was not looking at tabled code. 2009-02-09 23:34:12 +00:00
Vitor Santos Costa 8a3978e3e1 rename BinaryTestPredFlag to BinaryPredFlag
get rid of small annoying arithmetic bugs
2009-02-09 21:56:40 +00:00
Vitor Santos Costa b1cf60cafb moe changes to support atomic generation of atoms
support automatic generation of code walker (to find P's predicate and clause)
2008-12-24 09:04:44 +00:00
Vítor Santos Costa a8ac9bfb43 generate known atoms and functors automatically 2008-12-23 01:53:52 +00:00
Vítor Santos Costa e737599dc4 Change to simpler Eval mechanism
- avoid duplicate code
- implement different optimised code.
2008-12-04 23:33:32 +00:00
Vítor Santos Costa 58d4442883 fixes for gcc-4.3 (same as stable) 2008-11-26 09:56:18 +00:00
Vitor Santos Costa 87987d0b85 fix extra arguments. 2008-10-17 12:37:39 +01:00
Vítor Santos Costa 1226b58d8e The debugger relied on the environment stack. To fix it:
- absmi.c now tells who called the debugger, besides who it was calling
- this is used to control whether we allow a goal to be debugged.
- I have creep to start creeping immediately, and signal_creep to tell
  the next meta-call to creep what it executes!
- The debugger uses CalledFromTheDebugger to know if it is within the
debugger. If so, we do not need to creep on leaving.
2008-08-30 02:39:36 +01:00
Vítor Santos Costa 17ba194c1e Include new instruction execute_cpred to perform tail optimisation for
builtins. Required changes:
- be careful about creeping in deallocate: it may be followed by
something that is not a cut nor a proceed.
- include new instruction in absmi.c: it is a merge of execute and
call_cpred.
- change compiler to generate execute even for C builtins.
- be careful with dexecute: it may not be done if execute_op is a C
builtin.
- if we are in execute_cpred, the garbage collector cannot trust P:
instead it must look at CP to find out the size of the current
environment. The macro gc_P receives that information.
- We don't need to change CP if we do a meta-call from within
execute_cpred (and we in fact cannot). Check places where we do
meta-calls: exec, clause in cdmgr, and lu_recorded.
2008-08-28 04:43:00 +01:00
vsc e1866e2917 improve C-interface and SWI comptaibility a bit.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2292 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-24 16:02:04 +00:00
vsc ac6ddd5005 fix syntax error messages
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2275 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-12 10:55:52 +00:00
vsc 0c4388a66b fix some restore bugs
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2212 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-06 11:53:02 +00:00
vsc 6fe55c580f fix flags
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2152 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-15 12:19:33 +00:00
vsc e748bd9b33 more fixes to modules
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2102 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-15 12:41:33 +00:00
vsc a4a26478e0 fix some bugs from yesterday plus improve support for modules in
operators.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2095 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-13 10:15:36 +00:00
vsc 83e941e4cf don't break ISO standard in current_predicate/1.
Include Nicos flag.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2081 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-07 23:09:13 +00:00
vsc 637f381d94 valgrind it!
enable atom garbage collection.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2055 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-23 17:57:56 +00:00
vsc 3beda27d14 fixes to support threads and assert correctly, even if inefficiently.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2030 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-26 23:43:10 +00:00
vsc a5f5f4c237 compile ground terms away.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1975 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-06 17:02:13 +00:00
vsc c625347697 fix global variables
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1962 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-18 08:24:16 +00:00
vsc 5df974b857 some more fixes to make YAP swi compatible
fix absolute_file_name (again)
fix setarg


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1951 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-10 09:44:28 +00:00
vsc d4f01ee67b minor fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1946 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-08 23:02:16 +00:00
vsc dc3b7079f4 fix deadlock when trying to create a module with the same name as a
predicate (for now, just don't lock modules). obs Paulo Moura.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1869 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-04-18 23:01:16 +00:00
vsc e10bb2a6ae fix prolog_flags for chr.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1802 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-02-26 10:41:40 +00:00
vsc 47765f7739 WIN32 support
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1790 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-01-28 14:26:37 +00:00
vsc 90c1641841 several debugger and CLP(BN) improvements.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1732 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-12-13 16:10:26 +00:00
vsc ac8590d1f6 fix wide_char support for name/2.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1729 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-28 13:46:41 +00:00
vsc 0705ca0640 support for UNICODE, and other bug fixes.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1725 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-27 17:42:03 +00:00
vsc 1d49a93d76 fix handling of infinity in name/2 and friends.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1721 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-16 14:26:00 +00:00
vsc 39ae1ce717 fix argument order in db statistics.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1715 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-08 01:56:47 +00:00
vsc 9c506b2a2c 1estranha
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1709 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-06 18:35:05 +00:00
vsc 13080439a6 small fixes on threaded implementation.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1700 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-10 14:08:17 +00:00
vsc 07b2b76c48 ichanges for QSAR
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1691 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-09-15 19:32:47 +00:00
vsc f0b132b083 more fixes for global data-structures.
statistics on atom space.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1690 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-09-01 20:14:42 +00:00
vsc d11fd73306 global variables
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1685 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-08-22 16:12:46 +00:00
vsc 0f714371e5 fix garbage collector not to try to garbage collect when we ask for large
chunks of stack in a single go.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1684 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-08-07 18:51:44 +00:00
vsc 93501eb171 hacks
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1668 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-06-05 19:36:00 +00:00
vsc eea9f2a58e get rid of IntArrays and FloatArray code.
include holes when calculating memory usage.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1640 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-19 14:31:32 +00:00
vsc ee78d90bb9 fix info reported by memory manager under DL_MALLOC and SYSTEM_MALLOC
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1635 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-18 16:33:05 +00:00
vsc 62f7b73f09 fix the expand_consult patch
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1618 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-28 17:53:44 +00:00
vsc 6fb10bfc51 fix number of overflow bugs affecting threaded version
make current_op faster.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1615 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-28 13:23:23 +00:00
tiagosoares 8b5e4a267c MYDDAS: Top Level Functionality
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1535 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-05 02:26:35 +00:00
tiagosoares 8012773ae1 MYDDAS: Top Level Functionality
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1534 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-05 02:19:15 +00:00
vsc 60d79804fe major changes to support online event-based profiling
improve error discovery and restart on scanner.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1477 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-12-17 03:25:39 +00:00
tiagosoares 253f5e7f9a support for the MyDDAS interface library
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1465 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-22 11:25:59 +00:00
vsc 1fa46c6051 sveral updates
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1415 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-28 17:38:50 +00:00
vsc f5fc38a79e SWI compatible module only operators
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1412 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-21 16:09:03 +00:00
rslopes 030d16c40f BEAM for YAP update...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1385 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-09-08 22:06:45 +00:00
ricroc 34b2a0df4f TABLING NEW: support to limit the table space size
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1355 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-04 15:45:56 +00:00
rslopes 934f7d6791 solved warning: cast from pointer to integer of different size
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1348 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-20 13:54:42 +00:00
ricroc 3a93e0e079 TABLING: answers for completed calls can now be obtained by loading (new option) or executing (default) them from the trie data structure.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1342 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-06 19:34:12 +00:00
vsc 6979a873cc improvements to compiler: merged instructions and fixes for ->
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1338 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-06 15:10:18 +00:00
rslopes 35357f7f17 *** empty log message ***
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1294 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-05-26 18:03:08 +00:00
vsc 4c15c9371e indexing code could get confused with suspension points
some further improvements on oveflow handling
fix paths in Java makefile
changs to support gibbs sampling in CLP(BN)


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1283 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-27 20:09:26 +00:00
ricroc de17f5cca4 Adding tabling support for mixed strategy evaluation (batched and local scheduling)
UPDATE: compilation flags -DTABLING_BATCHED_SCHEDULING and -DTABLING_LOCAL_SCHEDULING removed. To support tabling use -DTABLING in the Makefile or --enable-tabling in configure.
  NEW: yap_flag(tabling_mode,MODE) changes the tabling execution mode of all tabled predicates to MODE (batched, local or default).
  NEW: tabling_mode(PRED,MODE) changes the default tabling execution mode of predicate PRED to MODE (batched or local).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1268 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-07 17:56:58 +00:00
vsc 59561e2688 fix excessive pruning in meta-calls
fix Term->int breakage in compiler
improve JPL (at least it does something now for amd64).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1264 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-03-13 06:26:13 +00:00
vsc 81b4413a33 Fix some possible errors in name/2 and friends, and cleanup code a bit
YAP_Error changed.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1256 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-03-02 19:48:03 +00:00
vsc f11ab09a60 try to make initialisation process more robust
try to make name more robust (in case Lookup new atom fails)


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1254 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-03-02 18:35:49 +00:00