At 1:05 PM +0100 10/27/02, Leopold Toetsch wrote:
Jürgen Bömmels (via RT) wrote:

# New Ticket Created by  Jürgen Bömmels # Please include the
string:  [perl #18097]
# in the subject line of all future correspondence about this
issue. # <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=18097 >
Thanks applied.

Though, /me thinks, that we should always have a valid interpreter.
When there is no interpreter, all allocated memory leaks. This is
currently not a big problem, but when there are finally long running
programs, that do generate interpreters on the fly and eval some
code, they would run out of mem soon.
I tried very hard to make sure that there was always a valid
interpreter. There are a very few things, all of them process-global,
that were allocated from system memory, and the intention was those
would be done once, when Parrot was initially instantiated, and the
global teardown code would release them. (Not, mind, that I wrote the
global teardown code) The initial setup for an interpreter's even
sized such that it can be done without triggering any GC or suchlike
things until the interpreter's memory subsystems are sufficiently set
up.

I think we're always going to run into some set of problems where we
can't have an interpreter set up, as things do go wrong at the very
beginning sometimes. In those cases, perhaps we're better off using
less-safe fallback mechanisms. It's  OK to fprintf to stderr, or use
sprintf, in those few cases where we've failed horribly and want to
at least get some info back to the process invoking us.
--
                                        Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to