Manuel M. T. Chakravarty
Sun, 24 Jun 2001 21:07:31 +1000

How much of a thread's memory is kept alive - after the
thread has terminated - as long as a program holds on to the
thread's `ThreadId'?  The following ToDo comment in
`PrelConc' seems to indicate that it is currently more than
we really want:

  data ThreadId = ThreadId ThreadId#
  -- ToDo: data ThreadId = ThreadId (Weak ThreadId#)
  -- But since ThreadId# is unlifted, the Weak type must use open
  -- type variables.

In combination with finalisers, this can be troublesome.