| Title: | Weakness is not well documented. |
| Status: | closed |
| Priority: | essential |
| Assigned user: | Gareth Rees |
| Organization: | Ravenbrook |
| Description: | Weakness is not well documented. The documentation has precious little to say about weakness. Even basic things like what the semantics of a weak reference are are missing. We need documentation for: - description of weak reference semantics, and in particular that all weak references get splatted together*. - how weakness interacts with finalization - different sorts of weakness (if we implement them) - what is weakness good for? - implementing part-weak part-strong hash tables (because its a common requirement) Possible we need subjobs for these things as we decide to do them. That's okay. |
| Analysis: | Decide what we want the behaviour to be, document it. * See [1]. It turns out that there is a defect in the MPS that can cause it to not splat all weak references to some object atomically (job001666). I believe lack of documentation may have contributed to the defect. GDR 2012-11-01: For now, I've documented that weak references may die at different times. |
| How found: | unknown |
| Evidence: | [1] <http://info.ravenbrook.com/mail/2007/06/26/11-48-09/0/> |
| Observed in: | 1.107.0 |
| Created by: | David Jones |
| Created on: | 2007‑06‑27 12:30:02 |
| Last modified by: | Gareth Rees |
| Last modified on: | 2012‑11‑03 14:49:04 |
| History: | 2007-06-27 DRJ Created. 2012-10-17 GDR Assigned to GDR. |
| Change | Effect | Date | User | Description |
|---|---|---|---|---|
| 180202 | closed | 2012‑10‑31 17:45:35 | Gareth Rees | Write weak references chapter. |
| 180165 | open | 2012‑10‑30 17:03:29 | Gareth Rees | Write pool reference. |
Generated at 2013-05-23 11:07:32 by $Id: //info.ravenbrook.com/infosys/cgi/issue.cgi#476 $
Copyright © Ravenbrook Limited. This document is provided "as is", without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this document. You may not duplicate or reproduce this document in any form without the express permission of the copyright holder.