
Hi Roberto:
Perhaps the following solutions would be best for your users who use versions 2.7 or 2.7.1. In their .xsb/xsbrc.P file they simply add the lines
:- import add_alias/2 from file_io.
?- add_alias(user_output,1).
?- add_alias(user_input,0).
which will give the desired behavior for flush_output (and most other predicates). The current CVS version has a slightly deeper fix.
My guess is that we won't be putting out an official release of XSB for a little while, as we are trying to finish making XSB fully multithreaded. However if worse comes to worse, we may be able to put out a patch release next week.
Terry
On Fri, 1 Jul 2005, Roberto Bagnara wrote:
Terrance Swift wrote:
Its pretty easy to comment out. Here's probably what is the safest way to do it. Simply go to $XSB_PATH/syslib and copy std_xsb.xwam to std_xsb.xwamsav Then comment out the line
standard_symbol(flush_output,1,file_io).
in std_xsb.P, load xsb, and type
| ?- compile(std_xsb).
This should succeed, and future sessions of xsb will use the modified library file. So just halt and reinvoke.
Dear Terrance,
thank you, but I now realize that, when I said I wanted solution (3), I misunderstood. In fact, this requires a kind of intervention the normal user would not want to make. So perhaps using the CVS version is the best options? Is it as simple as a `cvs checkout' followed by a `cd .../build' followed by the same sequence described in the install instructions? Or would it a patch to the released 2.7.1 be possible/better? Thanks again,
Roberto
-- Prof. Roberto Bagnara Computer Science Group Department of Mathematics, University of Parma, Italy http://www.cs.unipr.it/~bagnara/ mailto:bagnara@cs.unipr.it