The code in "Bananas in Space: Extending Fold and Unfold to Exponential Types"
http://citeseer.ist.psu.edu/293490.html
mirror:
http://www.cs.nott.ac.uk/~gmh/bananas.pdf
uses Gofer, and has examples such as
data Rec f = In (f (Rec f))
type P f a = f (Rec f, a)
mapP :: Functor f => (a -> b) -> P
On 1/22/07, Benjamin Franksen <[EMAIL PROTECTED]> wrote:
From my very limited understanding of these issues I would say it is not
possible, neither with type-classes nor with G[AR]DTs because it would mean
the return type of the function 'typecheck' would have to vary depending on
the input data,
On 9/11/06, Neil Mitchell <[EMAIL PROTECTED]> wrote:
Can you give any examples of terminating Haskell programs that a human
can analyse (perhaps with a bit of thought), but that your system
can't? (I couldn't find any in your paper)
Euclid's algorithm is mentioned on the web page, if I remember
Irina Kaliman wrote:
# rpm -ivh ghc-6.4-1.i386.rpm
error: Failed dependencies:
libreadline.so.4 is needed by ghc-6.4-1.i386
Go to rpmfind.net
Type libreadline.so.4
Find the text "Fedora Core 4"
Install the compat-readline RPM
Fedora has compat projects for other old libraries as well.
Jon Fairbairn wrote:
If you allow quantification over higher
kinds, you can do something like this:
d f = f . f
d:: âa::*, b::*â*.(b a â a) â b (b a)â a
What's the problem with
d :: (forall c . b c -> c) -> b (b a) -> a
d f = f . f
to which ghci gives the type
d :: forall a b. (forall c. b c ->
Jon Fairbairn wrote:
If you allow quantification over higher
kinds, you can do something like this:
d f = f . f
d:: âa::*, b::*â*.(b a â a) â b (b a)â a
What's the problem with
d :: (forall c . b c -> c) -> b (b a) -> a
d f = f . f
to which ghci gives the type
d :: forall a b. (forall c. b c
Is there a type we can give to
y f = f . f
y id
y head
y fst
are all typeable?
Jim Apple
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell
I still think I'm missing your point, but let me take a stab at it.
Conal Elliott wrote:
I'm suggesting you might better understand the
why of Haskell if you think denotationally (here about the meaning of
the [String] type), rather than operationally.
The meaning of a type seems to be about what h
Tomasz Zielonka wrote:
I like to think that pure functions don't change between executions.
I'd like to think they wouldn't change within executions. Is there a
pure haskell way to check the value of a function between exections?
Jim
___
Haskell mailing
Abraham Egnor wrote:
It's not a constant; see, for example, System.Environment.withArgs
That seems unnecessarily hack-ish. When would one use it when taking a
[String] parameter would be inferior?
Jim
___
Haskell mailing list
Haskell@haskell.org
http://
Conal Elliott wrote:
If getArgs had type [String], then its denotation must be a (lazy) list
of (lazy) sequences of characters (extended by bottom). For instance,
the expression (words "hello world") denotes the list ["hello","world"].
What list would "getArgs" denote?
I don't think I understand y
See subject. It seems that it would be constant through execution, and
so could be just [String].
Jim
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell
12 matches
Mail list logo