Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!munnari.oz.au!bruce!trlluna!rhea.trl.oz.au!pcampb From: pcampb@rhea.trl.oz.au (Peter Campbell) Newsgroups: comp.lang.prolog Subject: Turbo Prolog Summary: Help Please! Keywords: Memory Management, Databases Message-ID: <1464@trlluna.trl.oz> Date: 8 May 90 00:19:15 GMT Sender: root@trlluna.trl.oz Reply-To: p.campbell@trl.oz.au (Peter Campbell) Distribution: comp.lang.prolog Organization: Telecom Research Labs. Lines: 42 This is a repost - a fault in a local machine has caused an unknown amount of news/mail sent out to be eaten (our machines have a poor taste of diet :-) - apologies to anyone who has already seen this. Hi out there. I'm currently working on a large project written in Turbor Prolog, Version 2.0 (Borland). This project makes extensive uses of databases, both global and local, being split into about 9 modules. I have found that IMHO the internal memory management does not appear to be working - I use a local database for some function, retract all of the predicates within in, and then find out that the memory does not appear to be being freed (according to the predefined storage predicate). The funny thing is that sometimes when I try using a different database, when I'm finished with this the memory used by the previous database is then freed. This also appears to be random - I have used the same sequence of key presses 5 times in a row once, and except for the initial free memory at the start of the program, on every occasion the free memory was different, according to storage. Does anyone know (1) What Turbo Prolog is doing with its memory management, (2) How to free the memory - ideally, a predicate like db_garbagecollect for internal (rather than its current limitation to external) databases would be needed - or just a single call that cleans up all available heap and stack, (3) Why do I appear to be getting random numbers? Could any gurus out there post to the email address below. I'll summarize and sent to the net the responses if there appears to be sufficient interest. Thanks in advance. ---------------------------------------------------------------------- Peter K. Campbell | 2/M6 | Telecom Research Laboratories | Phone : + 613 541 6751 P.O. Box 249 | Fax : + 613 543 6026 Clayton 3168 | Email : p.campbell@trl.OZ.AU Victoria, Australia | ----------------------------------------------------------------------