[again raising the issue: could some mailing list admin please set the
reply-to to the list -- there's no need to send the message to the
individual and to the list!]
On 14/10/2016 15:23, Anil Madhavapeddy wrote:
> On 14 Oct 2016, at 15:11, Hannes Mehnert <han...@mehnert.org> wrote:
>> On 14/10/2016 15:08, Anil Madhavapeddy wrote:
>>> Yeah, once we agree on the conventions :-) Once we have everything using
>>> Result.t, we also need to find the right set of combinators.
>>> - There is Rresult for basic Result.t handling:
>>> - Lwt_result has a slightly different set of combinators
>>> So I guess we need to decide if we publish an Rresult_lwt.t which lifts up
>>> "('a,'b) result" into an Lwt.t with the same API as Rresult otherwise.
>> Based on earlier discussion from January 2015, I put some combinators in
>> mirage-types.lwt (maybe they should live elsewhere)
> Ah, missed those, thanks!
> Looks like we have a number of different conventions for the binds. Do we
> want to have the same set of operators with and without Lwt support (and open
> the Infix module locally as needed) or separate operators that be used
> alongside each other?
My experience (reading other people's code, see e.g. ) is that
overloading the syntax of bind is bad, since it is hard to comprehend
Certainly, pure libraries not using Lwt can easily reuse >>= and >|=,
but as soon as you depend on both Lwt.t and result, I'd prefer to have
new character sequences for the binds (and not numerous `let open ___
in`). The >>=? and >>|? originate from Ashish' suggestion
-- I'm open to any suggestions about the specific character sequences,
as long as we can agree on some.
MirageOS-devel mailing list