Newsgroups: perl.perl6.internals Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!nntp.perl.org Return-Path: Mailing-List: contact perl6-internals-h...@perl.org; run by ezmlm Delivered-To: mailing list perl6-intern...@perl.org Date: Fri, 24 Jan 2003 23:46:16 +0000 To: Dan Sugalski Cc: perl6-intern...@perl.org Subject: Re: Transferring control between code segments, eval, and suchlike things Message-ID: <20030124234615.GF278@Bagpuss.unfortu.net> References: <5.1.1.5.0.20030122175617.00ae79d0@postoffice2.mail.cornell.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4i X-SMTPD: qpsmtpd/0.20, http://develooper.com/code/qpsmtpd/ Approved: n...@nntp.perl.org From: n...@unfortu.net (Nicholas Clark) Lines: 13 On Thu, Jan 23, 2003 at 12:11:20AM -0500, Dan Sugalski wrote: > Every sub doesn't have to fit in a single segment, though. There may > well be a half-zillion subs in any one segment. (Though one segment > per sub does give us some interesting possibilities for GCing unused > code) For an interpreter that is allowing eval (or a namespace that isn't locked against eval) I think that you could only GC the old definition of redefined subroutines, and any anonymous subroutines that become unreferenced. Anything else is the potential lucky destination of a random future eval. Nicholas Clark