Commit Graph

165 Commits

Author SHA1 Message Date
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