On 9/26/18 11:34 PM, JJ Merelo wrote:


El mié., 26 sept. 2018 a las 23:31, Laurent Rosenfeld via perl6-users (<perl6-users@perl.org <mailto:perl6-users@perl.org>>) escribió:

    You can set a limit to the number of items (words) you want to
    retrieve: you will get only the first $limit words.

    If you don't supply any limit, Inf can be thought as the default
    value for the number of items, i.e. there is no limit and the
    routine will return as many words as it can from the source input.


And this is one of the things I love Perl 6 for, its consistency. Infinity is literally no limit. Using it meaning "no limit" is genius. Not "0 in this case means no limit" or "-1 means no limit" or "this constant meaning unavailable" or whatever. Infinity has no limit, we use them as a parameter to imply that argument has no limit.

Cheers

JJ


Hi JJ,

The more I learn about Perl 6, the more I prefer it over Perl 5.

To your list, I might add, everything starts counting from zero
(Perl5 m/ starts at $1).  So no guessing!

My problem with the default set to Inf is that Inf means a number
too large for the numbers of bits allocated to the variable to
handle.

RTFM: https://docs.perl6.org/type/Num#index-entry-Inf_%28definition%29-Inf
     The value Inf is an instance of Num and represents value that's
     too large to represent in 64-bit double-precision floating
     point number (roughly, above 1.7976931348623158e308 for
     positive Inf and below -1.7976931348623157e308 for negative Inf)
     as well as returned from certain operations as defined by the
     IEEE 754-2008 standard.

So how am I suppose to enter that as a value?  What it really means
is "all of them".  "Inf" is just a poor way of stating "all words"
as the default.  "A tremendously large numbers of words" is just
a weird way of saying "all of them".

And yes, I am blanking on how to best clean that up. We have no
value (that I know of) for "all".

-T

Reply via email to