AMC-ACE-Z, which has always been a working name, now has a real name: Punycode. I just submitted draft-ietf-idn-punycode-00.txt. It can be obtained now from:
http://www.cs.berkeley.edu/~amc/idn/ Why "Punycode"? It rhymes with Unicode and is intended to encode Unicode strings. It is "puny" in three senses: The repertoire of characters used in the encoded strings is small, the encoded strings are short, and the implementation is small. No changes have been made to the algorithm. Here is a summary of changes since the previous draft: * AMC-ACE-Z has been renamed to Punycode. * Usage of the term "ACE" has been made consistent with the latest IDNA draft. * An incorrect claim regarding the conditions under which the encoded string can begin with a hyphen has been corrected. * A paragraph has been added to section 6.4 (Alternative methods for handling overflow) pointing out that if the Punycode decoder is used only inside the ToUnicode operation (see the IDNA draft), then it doesn't need to check for overflow. (It also explains why.) * A Disclaimer and License appendix has been added: Regarding this entire document or any portion of it (including the pseudocode and C code), the author makes no guarantees and is not responsible for any damage resulting from its use. The author grants irrevocable permission to anyone to use, modify, and distribute it in any way that does not diminish the rights of anyone else to use, modify, and distribute it, provided that redistributed derivative works do not contain misleading author or version information. Derivative works need not be licensed under similar terms. * In the sample implementation the mixed-case annotation handling in the encoder has changed slightly. The previous version, when faced with ASCII letters inconsistent with their case flags, would ignore the case flags and copy the letters verbatim. The present version honors the case flags and forces the letters to the case indicated by the flag. The new behavior is more useful and more intuitive. The change has no effect when the input is nameprepped (already lowercase) and the case flags are absent (all unset == lowercase). AMC
