/usr/lib/hugs/oldlib/EdisonPrelude.hs is in hugs 98.200609.21-5.3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | -- Copyright (c) 1998 Chris Okasaki.
-- See COPYRIGHT file for terms and conditions.
module EdisonPrelude
{-# DEPRECATED "This module is unmaintained, and will disappear soon" #-}
where
data Maybe2 a b = Just2 a b | Nothing2 deriving (Eq,Show)
data Maybe3 a b c = Just3 a b c | Nothing3 deriving (Eq,Show)
-- utilities on Maybe2 and Maybe3 types???
class Eq a => Hash a where
hash :: a -> Int
-- forall x,y :: a. (x == y) implies (hash x == hash y)
class Hash a => UniqueHash a
-- no new methods, just a stronger invariant
-- forall x,y :: a. (x == y) iff (hash x == hash y)
class UniqueHash a => ReversibleHash a where
unhash :: Int -> a
-- forall x :: a. unhash (hash x) == x
-- Note that
-- hash (unhash i) == i
-- does not necessarily hold because unhash is not necessarily
-- defined for all i, only for all i in the range of hash.
-- add a few instance declarations for ints, floats, bools, chars, etc.
|