Norm,

On 03/19/10 04:34 AM, Norm Jacobs wrote:
> I think that in part, I misread this:
>> Interface Stability Description
>> --------- --------- -----------
>> ksh93 '/usr/gnu/bin/basename' built in Uncommitted basename utility
>> with GNU extensions
...
> to mean that
>
> $ ksh93 -c "/usr/gnu/bin/basename"
>
> would use the ksh93 basename built-in, which supports GNU extensions.
> Though that does seem in conflict with the paragraph that precedes the
> table. I gather that it means that
>
> $ PATH=/usr/gnu/bin:/usr/bin /usr/bin/ksh93 -c "basename"
>
> will use the ksh93 basename built-in, which happens to support GNU
> extensions.

Correct:  Fully qualified command names do not use built-ins.  This is 
specified by 2006/550.

>> Given that the shell honors compatibility within each of the
>> applicable paths for which it provides built-in bindings, there
>> doesn't seem to be any issue regarding "compatible behavior".
>
> If ksh93 built-ins are really drop-in replacements for the interfaces
> they intend on interposing on under ksh93 (/usr/bin, /usr/xpg4,
> /usr/gnu, ...), then we should be delivering a wrapper/link to the ksh93
> version so that we have consistency regardless of shell/execution
> environment. It could be the intention of this case and that I just
> missed it in my read through. If they are direct replacements, then they
> should use delivered as such. If they are not direct replacements, then
> they should probably not be used in place of their intended target under
> ksh93 only.
>
> This may also have some added benefit in helping us be able to better
> deal with conflict/divergence down the road.

Yes, that's a good point, and perhaps that can be looked into in the 
future.  However, I think this discussion is veering off-topic for this 
case, as you're now debating the implementation and architecture of the 
shell built-ins in general, which is not being introduced by this case. 
  That was introduced by PSARC 2006/550.  This case is building upon 
previously approved architecture.

-Seb

Reply via email to