[comp.lang.prolog] ESL Memory Problems?

tracy@cbnewsd.att.com (kim.tracy) (04/09/91)

I've been using Expert Systems Ltd's MS/DOS Prolog-2 public domain
interpreter for a class that I've been teaching and one of my
students ran across the following problem:

	The Prolog-2 interpreter will run out of space and not
	be able to fully recover.  Even exiting (halting) Prolog-2
	and rerunning Prolog-2 does not clean up the system and
	it will immediately run out of memory when the debugger
	is again started up.  The problem disappears when MS/DOS
	is reset and the program will run fine.  It appears that 
	Prolog-2 is not properly reinitializing and maintaining
	some memory-resident data structure.

Any further information on this problem (or a fix!) would be
greatly appreciated.  

	Thanks,

	--Kim Tracy, 708-979-4164
	AT&T Bell Laboratories & Illinois Institute of Technology
	..!att!ihlpz!tracy
	

tmurphy%peruvian.utah.edu@cs.utah.edu (Thomas Murphy) (04/10/91)

In article <1991Apr9.163312.29082@cbnewsd.att.com> tracy@cbnewsd.att.com (kim.tracy) writes:
>
>I've been using Expert Systems Ltd's MS/DOS Prolog-2 public domain
>interpreter for a class that I've been teaching and one of my
>students ran across the following problem:
>
>	The Prolog-2 interpreter will run out of space and not
>	be able to fully recover.  Even exiting (halting) Prolog-2
>	and rerunning Prolog-2 does not clean up the system and
>	it will immediately run out of memory when the debugger
>	is again started up.  The problem disappears when MS/DOS
>	is reset and the program will run fine.  It appears that 
>	Prolog-2 is not properly reinitializing and maintaining
>	some memory-resident data structure.
>
>Any further information on this problem (or a fix!) would be
>greatly appreciated.  

What version of dos? number of buffers and files set in config.sys
are you using ems? how much total memory?  Often when programs
run out of memory they kill some of the system stuff before dying or
also when put past their limit they can exit in a non-standard way there
by leaving allocated memory that is no longer needed.....

murph