Malcolm, Thanks for your response. I think I am dense and am not quite understanding your point. In the example you gave the foo and bar both take and return unit. Can you explain a bit more your point?
Trevor On Sun, Mar 15, 2015 at 7:39 AM, Malcolm Matalka <[email protected]> wrote: > The biggest reason is that it makes doing any monadic Result.t work > possible. Consider: > > foo () >>= fun () -> > bar () >>= fun () -> > Cohttp.something () >>= function > | Ok ... -> > | Error ... -> > > > If every one of those functions returned a regular variant, you would > not be able to compose them like that. > > Trevor Smith <[email protected]> writes: > > > Hello, > > > > I am curious to hear the design tradeoffs that were considered in > choosing > > polymorphic variants vs variants in the code.mli types. I haven't really > > wrapped my head around why that decision was made, and am eager to learn > > more about real world use of polymorphic variants. > > > > Thank you. > > > > Trevor > > _______________________________________________ > > MirageOS-devel mailing list > > [email protected] > > http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel >
_______________________________________________ MirageOS-devel mailing list [email protected] http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
