On 17 October 2016 at 10:52, oldk1331 <oldk1...@gmail.com> wrote:
>> Rather than Haskell per se, personally I am most interested in
>> the "category theory" approach summarized in Martin's email, therefore
>> I prefer the alternative definition of monads as a domain satisfying
>> Functor
>>     map   :: (a -> b) -> M a -> M b
>> with these two additional operations:
>>    return :: a -> M a
>>    join   :: M (M a) -> M a
>> instead of "bind".
> We can have both.  BTW, the 'join' operation is impossible to deal
> with more than one type?

In 'join' more than one type is not necessary. The main work is done
by 'map' which is presumed to be able to handle this case.

>> Concerning your hack for FunctorPackage and MonadPackage you might
>> be  interested in another OpenAxiom innovation implementing the "forall"
>> universal quantifier which often eliminates the need to write separate
>> packages.
> Yes!  One thing I felt lacking in FriCAS is the "forall" quantifier, aka
> anonymous packages.  Another thing is category/domain constructor
> as first class entity: in principle Maybe is a domain constructor with
> type Domain->Domain, and a member of Monad, but FriCAS only
> recognize "Maybe INT has Monad INT", not "Maybe has Monad" nor
> "x : Monad" in package parameter.

Here is another rather long and related thread on this subject from 2011:


Unfortunately it did not end in a complete resolution even in
OpenAxiom. Perhaps now with your interest we can make some more

Bill Page.

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 fricas-devel+unsubscr...@googlegroups.com.
To post to this group, send email to fricas-devel@googlegroups.com.
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