Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] Is arrow programming impossible in ocaml?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Jacques Garrigue <garrigue@k...>
Subject: Re: [Caml-list] Is arrow programming impossible in ocaml?
From: Nick Name <nick.name@inwind.it>
> Alle 05:02, martedì 14 ottobre 2003, Jacques Garrigue ha scritto:
> > But as long as you represent arrows by normal functions (as this
> > seems to be the case in the paper), eta-expanding should solve the
> > problem.
> >
> 
> Unfortunately I can't; I am using arrows to hide a function-like 
> structure wich is more complex than functions
> 
> >   let a y = arr (fun x -> x) y
> >
> > Not also that there is no problem if Arr is a constructor:
> 
> I can't do this in general, either, because I need the (>>>) combinator, 
> wich represents (reverse) function composition, so
> 
> type ('a,'b) t = Arr of ('a -> 'b) | Seq of ((('a,'c) t) * (('c,'b) t))
> 
> where Seq is the composition, is not writeable because I would need to 
> make 'c a parameter for t, and then ('a,'c) t would no longer be valid 
> etc.
> 
> Do anyone see another solution?

I'm afraid you will have to state in more detail what you want to do.
Or to show some Haskell code.

What you try to do may or may not be possible, but I don't think that
the value restriction is essential to your problem.
In a first step I suppose you could assume that you have no
polymorphic identity, just identity functions at every type.

Jacques
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners