Alexandre Ferrieux wrote:
> TIP #345: KILL THE '''IDENTITY'''ENCODING
> ===========================================
Much to say on this topic, but my time is limited today.
For now just a bit of additional background. See my commits
to Tcl and Tk from last October. The use of the identity encoding
has been completely purged from Tk and its test suite. The
use of the identity encoding as a place holder for the system
encoding during Tcl startup has been purged as well.
The main place the identity encoding is still in use is in
the Tcl test suite, both directly and through the command
[tcltest::bytestring] which is defined in terms of
[encoding convert* identity].
I think the next logical step is to convert the identity
encoding from one implemented directly in C code and in
the default sources of Tcl into one of the encodings that
is loaded on demand from a *.enc file. Next Tcl can stop
distributing the identity.enc file, and those extensions or test
suites that still insist on having the encoding around
can distribute it themselves and use [encoding dirs] to
force Tcl to find it.
Getting rid of the identity encoding is a good thing, but it's
only a part of the larger task of enforcing the "contract"
we've evolved ourselves into of demanding that strings which
find their way to an objPtr->bytes must conform to our internal
encoding. We didn't start out demanding that, but over time
more and more of our internals assume it to be true.
--
| Don Porter Mathematical and Computational Sciences Division |
| don...@ni... Information Technology Laboratory |
| http://math.nist.gov/~DPorter/ NIST |
|______________________________________________________________________|
|