List structures are allocated with a certain minimum number of slots in anticipation of future/likely insertions on the list. I think the minimum may be your magic number 8, and that would affect when and how many garbage collections are needed for a given application, especially applications with large numbers of small lists.
Regarding recursive procedures in the garbage collector, it would be interesting but non-trivial to rewrite them to avoid the recursion. I would be happy to work with any volunteer interested in implementing this, or I could hire a student, or a student volunteer may come along someday. Removing recursion would add complexity to garbage collection, which is already pretty tricky, but it might speed things up and reduce or remove the possibility of C stack overflow during garbage collection. I am not sure it would be all that hard. The code is in src/runtime/rmemmgt.r, Kazimir; you need a "grep.exe"... :-) In the meantime, I'll certainly consider putting out a "large C stack" version of the virtual machine for Windows users. I added code to grow the C stack under Linux/UNIX to CVS already, so hopefully that base is covered. Clint [EMAIL PROTECTED] ------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ Unicon-group mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/unicon-group
