[Haskell-cafe] ANN: random-access-list-0.1
Stephan Friedrichs
deduktionstheorem at web.de
Thu Jun 12 18:25:57 EDT 2008
Chris Smith wrote:
> Chaddaï Fouché wrote:
>> Given that this structure isn't lazy enough, I really don't see a
>> problem with using Int (any random access list with a size that needs an
>> Integer would blow the memory anyway...).
>
> Bad way to think about things. The implications of using Int as the
> result type of a function extend far beyond just storing the result
> type. They also include doing other computations that depend on the
> result type, and with enough type inference, the broken Int type
> propogates throughout the program.
>
I'd like not to be restricted to Int, but what's the proper way to do
so? Just adding "genericFun = fromInteger . toInteger . fun" functions
is just as bad as using Ints directly. What I need is something like a
more general Ix class that is not limited to a fixed interval:
class Ix2 i where
-- convert starting index and given index to an Int for internal
-- representation
toIndex :: i -> i -> Int
-- given an internal Int index and a starting index, return the
-- representing index
fromIndex :: Int -> i -> i
-- translate a starting index and a number of elements into a
-- size
size :: i -> Int -> i
This is meant to work with a starting-index and a given index, so that a
list does not have to start at index 0. Is there something like this? Or
is it somehow possible to use the existing Ix class to do that?
//Stephan
--
Früher hieß es ja: Ich denke, also bin ich.
Heute weiß man: Es geht auch so.
- Dieter Nuhr
More information about the Haskell-Cafe
mailing list