import Prelude
-import Data.Dynamic
+import Data.Typeable
#ifdef __HUGS__
import Hugs.Stable
the same object.
The reverse is not necessarily true: if two stable names are not
- equal, then the objects they name may still be equal.
+ equal, then the objects they name may still be equal. Note in particular
+ that `mkStableName` may return a different `StableName` after an
+ object is evaluated.
- Stable Names are similar to Stable Pointers ('Foreign.StablePtr'),
+ Stable Names are similar to Stable Pointers ("Foreign.StablePtr"),
but differ in the following ways:
- * There is no @freeStableName@ operation, unlike 'Foreign.StablePtr's.
+ * There is no @freeStableName@ operation, unlike "Foreign.StablePtr"s.
Stable names are reclaimed by the runtime system when they are no
longer needed.
#endif /* __GLASGOW_HASKELL__ */
-#include "Dynamic.h"
+#include "Typeable.h"
INSTANCE_TYPEABLE1(StableName,stableNameTc,"StableName")