Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.bash.bug > #15817 > unrolled thread

Re: [PATCH] efficient [[ -v 1 ]] [was: Should [[ -v 1 ]] be supported?]

Started byChet Ramey <chet.ramey@case.edu>
First post2020-01-18 19:23 -0500
Last post2020-01-18 19:23 -0500
Articles 1 — 1 participant

Back to article view | Back to gnu.bash.bug

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH] efficient [[ -v 1 ]] [was: Should [[ -v 1 ]] be supported?] Chet Ramey <chet.ramey@case.edu> - 2020-01-18 19:23 -0500

#15817 — Re: [PATCH] efficient [[ -v 1 ]] [was: Should [[ -v 1 ]] be supported?]

FromChet Ramey <chet.ramey@case.edu>
Date2020-01-18 19:23 -0500
SubjectRe: [PATCH] efficient [[ -v 1 ]] [was: Should [[ -v 1 ]] be supported?]
Message-ID<mailman.2941.1579393388.1979.bug-bash@gnu.org>
On 1/18/20 2:48 PM, Martijn Dekker wrote:
> Op 29-12-18 om 01:19 schreef Chet Ramey:
>> On 12/27/18 3:11 PM, Martijn Dekker wrote:
>>
>>> Consistency might be a better argument. If [[ -v foo ]] is equivalent to [[
>>> -n ${foo+s} ]] for variables (with the advantage that you don't need 'eval'
>>> to handle arbitrary values of 'foo'), then perhaps it's not unreasonable to
>>> expect [[ -v 1 ]] to be equivalent to [[ -n ${1+s} ]].
>>
>> The completeness argument is more rigorous, and there's a case to add this
>> in a future version of bash. He didn't make that argument, though.
> 
> I noticed some deactivated code tagged bash-5.1 with my name on it. Cool. :)
> 
> Isn't the way below much more efficient, though? There's no need to
> retrieve and discard the value of a positional parameter -- we can just
> compare the number to $#, i.e. number_of_args(). Any number between 0 and
> $#, inclusive, represents a set positional parameter by definition.

Thanks; that's clever.

Chet

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
		 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    chet@case.edu    http://tiswww.cwru.edu/~chet/

[toc] | [standalone]


Back to top | Article view | gnu.bash.bug


csiph-web