--50RDeE14MEV4qpyy
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Francis Hwang (sera / fhwang.net) wrote:

> For the most part finalizers aren't really necessary since the block
> syntax of Ruby makes it easy to handle resource creation and
> destruction in the same method. If your syntax looks like
>=20
> someObject.getResource { |resource| resource.doThing }
>=20
> .... then all you have to do is ensure that the getResource method
> cleans up after itself. This works very well for self-contained
> resources.

The problem Samuel (and myself) are working on falls outside this
category.

Borges need to track the states of objects and restore them.  To do
this, it snapshots the object.  When the original object is no longer
alive, the snapshots of the states should be removed.  (They should go
away when the Session holding them dies, but this may be many MB
later.)

--=20
Eric Hodel - drbrain / segment7.net - http://segment7.net
All messages signed with fingerprint:
FEC2 57F1 D465 EB15 5D6E  7C11 332A 551C 796C 9F04


--50RDeE14MEV4qpyy
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (FreeBSD)

iD8DBQE/2LPMMypVHHlsnwQRAssQAKCsjIhYHt/8+gC//yT8nzwOiAfgHACdFsQm
WW3CljvZE/nAVWip1iCDqZM=
=3mdd
-----END PGP SIGNATURE-----

--50RDeE14MEV4qpyy--

Francis Hwang (sera / fhwang.net) wrote:

> For the most part finalizers aren't really necessary since the block
> syntax of Ruby makes it easy to handle resource creation and
> destruction in the same method. If your syntax looks like
>=20
> someObject.getResource { |resource| resource.doThing }
>=20
> .... then all you have to do is ensure that the getResource method
> cleans up after itself. This works very well for self-contained
> resources.

The problem Samuel (and myself) are working on falls outside this
category.

Borges need to track the states of objects and restore them.  To do
this, it snapshots the object.  When the original object is no longer
alive, the snapshots of the states should be removed.  (They should go
away when the Session holding them dies, but this may be many MB
later.)

--=20
Eric Hodel - drbrain / segment7.net - http://segment7.net
All messages signed with fingerprint:
FEC2 57F1 D465 EB15 5D6E  7C11 332A 551C 796C 9F04

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (FreeBSD)

iD8DBQE/2LPMMypVHHlsnwQRAssQAKCsjIhYHt/8+gC//yT8nzwOiAfgHACdFsQm
WW3CljvZE/nAVWip1iCDqZM=
=3mdd
-----END PGP SIGNATURE-----