Commit Graph

270 Commits

Author SHA1 Message Date
Vítor Santos Costa
af4e9b4bbc for number free flag setting 2013-11-25 11:26:42 +01:00
Vitor Santos Costa
9eb07a8c8a more cleanups 2013-11-15 15:45:55 +00:00
Vitor Santos Costa
7930b4d648 fixes 2013-11-13 13:39:30 +00:00
Vitor Santos Costa
220970db6d more integration and cleanup work: allow irect access from YAP to swi global and local, to
check flags quickly.
2013-11-13 12:57:52 +00:00
Vitor Santos Costa
4fa9021a7b integration work:
- use SWI flags whenever possible
  - support by module unknown, escapes, strings
  - accesss thread info fom SWI
  - allow strings to be input as strings.
  - remove some unused flags.
2013-11-13 10:38:20 +00:00
Vítor Santos Costa
ad0ff98f1a use swi flags whenever possible 2013-11-04 01:14:48 +00:00
Vitor Santos Costa
3b2b4b03c8 split atom stuff to its own file 2013-05-09 18:00:41 -05:00
Vitor Santos Costa
743c9c69fb get rid of PROTO 2013-04-25 17:15:04 -05:00
Vitor Santos Costa
24a75525c0 fix compilation 2013-04-25 14:21:41 -05:00
Vitor Santos Costa
90abff4f2f Exo compilation, the range example. 2013-04-16 20:04:53 -05:00
Vitor Santos Costa
f7980f941b avoid unnecessary CACHE_REGS in inlines. 2013-03-26 16:10:03 -05:00
Vitor Santos Costa
d163cadda1 pass regs when constructing long ints and floats.
fix small gcc complaints.
2013-03-26 15:01:52 -05:00
Vítor Santos Costa
046cb5f8d6 debugging 2013-02-08 10:36:45 -06:00
Vitor Santos Costa
9ce268915d imprive error handling. 2013-01-29 10:50:04 +00:00
Vitor Santos Costa
2de1a678e4 fix atom_statistics 2013-01-23 09:55:11 +00:00
Vítor Santos Costa
0898c52e6f fix init order to have terms when setting up Prolog flags 2013-01-21 09:37:55 +00:00
Vítor Santos Costa
798afc81c4 fix argv[0] discovery. 2013-01-13 17:55:13 +00:00
Vitor Santos Costa
e14703b990 flags patch by Petr Pisaf 2013-01-09 09:20:41 +00:00
Vítor Santos Costa
f063a2bd52 exo first step. 2013-01-07 09:47:14 +00:00
Vitor Santos Costa
81a2420747 hide hidden predicates. 2012-11-08 14:07:55 +00:00
Vitor Santos Costa
8126381e8d range and fix locals. 2012-10-23 14:55:44 +01:00
Vitor Santos Costa
88f2dc7730 change the way predicates are hidden 2012-10-19 18:10:48 +01:00
Vitor Santos Costa
503bdcc8b3 check for overflow in big strings 2012-10-16 08:44:49 +01:00
Vítor Santos Costa
169339d5be fix atom_length/2 ISO. 2012-09-27 22:32:12 +01:00
Miguel Areias
bc21735ff1 fixed compilation bug (Prof. Vitor Costa) 2012-07-02 19:48:58 +01:00
Vitor Santos Costa
051936ca50 fix thread bootup (with mutex/2). 2012-06-26 13:02:44 +01:00
Vitor Santos Costa
7db18d5ce2 fix bad use of current_predicate. 2012-06-12 14:50:07 +01:00
Vítor Santos Costa
d7c7ef1c01 ifix signdeness stuff. 2012-04-23 17:26:49 +01:00
Vítor Santos Costa
d8452fd3b1 fix warning. 2012-02-17 11:31:46 +00:00
Vitor Santos Costa
7c0ba3b867 qly stuff. 2011-08-24 00:11:54 -03:00
U-WIN-U2045GN0RNQ\Vítor Santos Costa
b6aca9463d Merge branch 'master' of ssh://yap.git.sourceforge.net/gitroot/yap/yap-6.3 2011-08-18 22:35:13 +01:00
Vitor Santos Costa
c871761c11 more qly stuff. 2011-08-03 08:23:00 +01:00
U-WIN-U2045GN0RNQ\Vítor Santos Costa
840e287cda mode changes 2011-07-25 17:09:28 +01:00
Ricardo Rocha
8116aac432 parallel execution is now explicit using one of the new built-in
predicates: parallel/1, parallel_findall/3 or parallel_once/1.
2011-06-21 15:19:07 +01:00
Vitor Santos Costa
2177b4a63f new string_to_list and fix string_to_atom/2. 2011-06-14 08:59:17 +01:00
Vitor Santos Costa
2aa76a546c string_to_atom/2. 2011-06-13 01:43:03 +01:00
Joao
e319b2fbf9 fix YAPOR THREADS. fix threads + tabling. 2011-05-27 17:21:03 +01:00
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