Re: [Haskell] Eternal Compatibility In Theory

2005-05-02 Thread Duncan Coutts
On Mon, 2005-05-02 at 15:57 -0400, robert dockins wrote: > >>Is there a way to reliably and automatically check if two versions of > >>a haskell module are interface compatible? > > > > No, because it would have to check whether the semantics of functions > > is the same, even if they are written

Re: [Haskell] Eternal Compatibility In Theory

2005-05-02 Thread Philippa Cowderoy
On Mon, 2 May 2005, robert dockins wrote: Suppose I want to ask the easier question "do these two text files implement haskell modules which are _type_ compatable?", how would I do it? Ie, I want the test to fail if I change the type of some function foo, or if I add a method to a class declara

Re: [Haskell] Eternal Compatibility In Theory

2005-05-02 Thread robert dockins
Is there a way to reliably and automatically check if two versions of a haskell module are interface compatible? No, because it would have to check whether the semantics of functions is the same, even if they are written differently. Of course, we cannot expect the computer to examine the semanti

Re: [Haskell] Eternal Compatibility In Theory

2005-05-02 Thread Marcin 'Qrczak' Kowalczyk
robert dockins <[EMAIL PROTECTED]> writes: > Is there a way to reliably and automatically check if two versions of > a haskell module are interface compatible? No, because it would have to check whether the semantics of functions is the same, even if they are written differently. -- __("<

Re: [Haskell] Eternal Compatibility In Theory

2005-05-02 Thread robert dockins
> Eternal Compatibility in Theory > http://www.haskell.org/tmrwiki/EternalCompatibilityInTheory Some thoughts: Is there a way to reliably and automatically check if two versions of a haskell module are interface compatible? This would greatly aid the process of deciding when to create a new

[Haskell] Eternal Compatibility In Theory

2005-05-02 Thread Sven Moritz Hallberg
On Mon, May 02, 2005 at 08:16:12AM +0200, Shae Matijs Erisson wrote: > > http://www.haskell.org/tmrwiki/IssueTwo > Dear Haskellers, Even though it's a plug, I'd like to seperately announce my article for this issue, because it grew out of discussion on this list. I'd posted some thoughts on the

[Haskell] Re: rekursive array problem

2005-05-02 Thread Peter Simons
Andreas Fuertig writes: > fillArray ["a"] > should be something like this: > [[("a",True)],[("a",False)]] A pretty generic solution using the "Bounded" and "Enum" type classes to calculate the list of all values for a given type would be: enumAll :: (Bounded a, Enum a) => [a] enumAll = [ minB

Re: [Haskell] rekursive array problem

2005-05-02 Thread Mirko Rahn
Andreas Fuertig wrote: fillArray ["a"] [[("a",True)],[("a",False)]] fillArray ["a","b"] [[("a",True),("b",True)],[("a",False),("b",True)],[("a",True),("b",False)], [("a",False),("b",False)]] A simple solution is: fill :: [a] -> [[(a,Bool)]] fill [] = [[]] fill (x:xs) = do v <- [True,False] ; vs <-

[Haskell] rekursive array problem

2005-05-02 Thread Andreas Fuertig
Hi @ all! I have a big problem. i have a list of variables and now i need something like this fillArray ["a"] should be something like this: [[("a",True)],[("a",False)]] fillArray ["a","b"] [[("a",True),("b",True)],[("a",False),("b",True)],[("a",True),("b",False)], [("a",False),("b",False)]] a