Does everyone all agree that "MapCategory" is a proper name?

There's a problem when implementing Haskell's Applicative:

Applicative A exports signature:

   ap : (A(S->S), A(S)) -> A(S)  -- % is A(S)

First, you can't express A(S->S) in category definition.
Second, for a specific domain, compiler doesn't accept
type A(S->S). (For example, in domain List, you can't use List(S->S) .)

In interpreter, for List, ap can be defined as this, with or without type:
ap(f:List(INT->INT),x:List(INT)):List(INT) == concat map(y+->map(y,x),f)
ap(f,x) == concat map(y+->map(y,x),f)

Note that in general it should use function 'join : M(M a) -> M a'
instead of concat, and this signature also can not be expressed
in category.

I think these 2 limitations are not fundamental and can be worked out.

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to