[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] Using Result instead of Option in libraries

  • To: Hannes Mehnert <hannes@xxxxxxxxxxx>
  • From: Anil Madhavapeddy <anil@xxxxxxxxxx>
  • Date: Fri, 14 Oct 2016 15:23:59 +0100
  • Cc: mirageos-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Fri, 14 Oct 2016 14:24:04 +0000
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=recoil.org; h=content-type :mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; q=dns; s= selector1; b=YkFN61JjJZWAG4UiAI/ZW2f4h+XoRQpnS3bX+Bvyr+6H4a9seKU sVZKXeWQpHQ6VODf/Y7VYmRlM3k4pctvm30ez9csSvPm6vBfX8VQWCoICMoP03OG KVbD7e3UdBKcEcgzdpa/Mz1765pLbvNa7SEjO/DZzHwmWQVS658nzci8=
  • List-id: Developer list for MirageOS <mirageos-devel.lists.xenproject.org>

On 14 Oct 2016, at 15:11, Hannes Mehnert <hannes@xxxxxxxxxxx> 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: 
>> http://erratique.ch/software/rresult/doc/Rresult.html
>> - Lwt_result has a slightly different set of combinators 
>> https://github.com/ocsigen/lwt/blob/master/src/core/lwt_result.mli
>> 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)
> https://github.com/hannesm/mirage/blob/network-error/types/runtime.lwt/m_infix.mli

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?


MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.