Hello Gabriel, On Sat, 4 Oct 2014 17:23:02 +0200 Gabriel Scherer wrote: > `kick` now returns a [> error_cant_kick | `Success of 'a ], while > `invite` returns [> error_cant_invite | `Success of 'a ]. Thank you for this idea, I was actually looking for a way to define subsets of polymorphic variants, I didn't know that I can just put them into other types and was unaware of the # syntax. Now my functions return just the possible error variants, not all of them anymore. I've reworked the code to get rid of the huge apierror type (which I suppose I can throw away completely, since a user of the API will never need it anyway), but it lead to quite huge blow-up of signatures: I am going to simplify these subsets a bit (since e.g. all history methods use the same polymorphic variants and some possible error types imply other error types) but it kinda looks very verbose now - any hints on what can be done? regards, Marek