Path: csiph.com!optima2.xanadu-bbs.net!xanadu-bbs.net!news.glorb.com!usenet.stanford.edu!not-for-mail From: Dan Douglas Newsgroups: gnu.bash.bug Subject: Re: Parameter Expansion: Case Modification: ${var~} not documented Date: Tue, 18 Aug 2015 12:43:14 -0500 Lines: 18 Approved: bug-bash@gnu.org Message-ID: References: <55D34377.9010305@case.edu> NNTP-Posting-Host: lists.gnu.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7Bit X-Trace: usenet.stanford.edu 1439919804 19602 208.118.235.17 (18 Aug 2015 17:43:24 GMT) X-Complaints-To: action@cs.stanford.edu Cc: Isaac Good , chet.ramey@case.edu To: bug-bash@gnu.org Envelope-to: bug-bash@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:user-agent:in-reply-to :references:mime-version:content-transfer-encoding:content-type; bh=QfYl2XYboomLv0n6d/Lgs1LgUO1MOhrp/2xojqAR2HI=; b=DLB5RNmiSvFcanIRHA/v0x8tmnFCuY2X45hYVBg4R8EH9L5hukeEu+t4BK+oTHpqJS YlgnaRdxC1eyHSctM03Uf2pD7YTy3RDb3ry7DEOYREg23uVIrOJ/IKVZHw7/leaY4xT2 3JzeLEq5u6a1XWUNzWU0ggOvlkUKkr1TZPzSeq7Bz8iFVRqVG/2GrEu+Go3WUlBVghDN f4ZV6q7x06vBiD26P24f4mIVsC2W1eaAjAdvRxb6Qy20TqvnVrjTgiHcWexyyUGf8F3I vcK3luM9MKGXcDkh4UtZNqD/9IbzlUUcJ6sk0dEMJH8OCOZOocOnol3leMD6XbQdtHsx odag== X-Received: by 10.50.79.196 with SMTP id l4mr22458736igx.48.1439919796621; Tue, 18 Aug 2015 10:43:16 -0700 (PDT) User-Agent: KMail/5.0.42 alpha1 (Linux/4.2.0-rc7; KDE/5.14.0; x86_64; ; ) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:4001:c05::22f X-BeenThere: bug-bash@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Bug reports for the GNU Bourne Again SHell List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: csiph.com gnu.bash.bug:11375 On Tuesday, August 18, 2015 9:54:55 AM CDT Isaac Good wrote: > Would you mind sharing the rational behind having it undocumented? Since I like guessing: the syntax for parameter expansion operators is currently non-extensible, so the namespace of terse operators is in limited supply. New syntax should be extensible to suit future needs while keeping the language minimal. This is new syntax that adds one function that will be rarely used. I can think of better ways to use that operator. The operators in use currently are already a disaster. We *really* could use a solution for the circumfix operators `!var[@]` and `!var[*]` that collide with the prefix `!` operator, and for reasons unknown don't interoperate with any of the other expansions such as array slicing / subscripting. I wouldn't want to add new (pointless) syntax before the fundamental problems are addressed. -- Dan Douglas