Re: EXPath Binary module: bin:unpack-integer()

The usual convention in F&O is that "data arguments" allow an empty sequence, and "control arguments" don't. Data arguments are those that can be seen as supplying the data on which the function operates, control arguments as those that qualify what the function does. Of course the distinction is highly subjective.

Michael Kay
Saxonica

On 3 Oct 2013, at 12:09, Christian Grün wrote:

> Hi John,
> 
> one more detail: I would suggest to change the signature of bin:shift from:
> 
>   bin:shift($in as xs:base64Binary?, $by as xs:integer) as xs:base64Binary?
> 
> to:
> 
>   bin:shift($in as xs:base64Binary, $by as xs:integer) as xs:base64Binary
> 
> If there is a particular reason why empty sequences are to be allowed for bit:shift, it could be beneficial to add some explanation to the description of the function. As an alternative, the other bitwise operations could be extended to also handle empty sequences, but I would prefer the first solution.
> 
> What do you think?
> Christian
> ___________________________
> 
> 2013/10/3 John Lumley <john@saxonica.com>:
> > A minor change (suggested by Christian Grün) is proposed to the Binary
> > module:
> >
> > renaming  bin:unpack-signed-integer()   to   bin:unpack-integer()
> >
> > on the basis that XPath integers are signed by default, and will be in line
> > with bin:unpack-float(), bin:unpack-double(). bin:unpack-unsigned-integer()
> > remains with the same name.
> >
> > 'Last Call' for changes to the Binary module will be issued soon (before it
> > progresses to the dizzy heights of being the first EXPath '1.0' version),
> > and as far as the editors are concerned, this is the last substantial
> > change. Any objections to this - please holler...
> >
> > John
> >
> > --
> > John Lumley MA PhD CEng FIEE
> > john@saxonica.com
> > on behalf of Saxonica Ltd

Received on Thursday, 3 October 2013 11:21:12 UTC