News for hackers. Stuff that matters.
Re:Things Every Hacker Once Knew by hn92726819 on Friday September 29, 2023 @07:28AM (#37702139)
> ASCII is a character set, it doesn't define the on-disk representation

ASCII is an encoding, and sometimes people refer to the ASCII charset as "ASCII" too. So it does define on-disk representation. A file with the leading 0s removed is no longer ascii-encoded. Similarly, a gzipped ASCII file is also no longer an ASCII file

Re:Things Every Hacker Once Knew by mjg59 on Friday September 29, 2023 @07:34AM (#37702188)
What specification defines ASCII encoding as an 8-bit format?
Re:Things Every Hacker Once Knew by LegionMammal978 on Friday September 29, 2023 @08:22AM (#37702775)
RFC 20 [0] defines an 8-bit "ASCII Format for Network Interchange". The older documents are careful to call it "network ASCII" or "ASCII-8" (or the related "NVT-ASCII" for TELNET), but some newer documents (e.g., [1], [2], or [3]) abbreviate the name to "ASCII" in the context of network interchange. (Though I don't mean to refute that "ASCII" or "7-bit ASCII" or especially "US-ASCII" can refer to rhe 7-bit codeset, only to note that the unqualified name has been overloaded to refer to 8-bit ASCII as well.)

[0] https://www.rfc-editor.org/rfc/rfc20.html

[1] https://www.rfc-editor.org/rfc/rfc822.html

[2] https://www.rfc-editor.org/rfc/rfc3797.html#page-6

[3] https://www.rfc-editor.org/rfc/rfc7997.html

Re:Things Every Hacker Once Knew by mjg59 on Friday September 29, 2023 @08:28AM (#37702905)
I'd argue that the need to provide a specification for ASCII as an 8-bit format is pretty strong evidence of the existence of ASCII in other formats :)
Re:Things Every Hacker Once Knew by SAI_Peregrinus on Friday September 29, 2023 @09:29AM (#37703921)
ASCII is standardized in (latest version) ANSI X3.4-1986, not by an internet RFC. That standard did not define an 8-bit encoding of ASCII, only a 7-bit encoding. That the IETF later called an 8-bit encoding ASCII just causes confusion. IMO they should have called it ISCII, for IETF Standard Code for Information Interchange.
Re:Things Every Hacker Once Knew by LegionMammal978 on Friday September 29, 2023 @12:30PM (#37706597)
The 8-bit "ASCII Format for Network Interchange" (generally called "network ASCII" or "net-ASCII" or similar) is defined in the very first paragraph of RFC 20:

> For concreteness, we suggest the use of standard 7-bit ASCII embedded in an 8 bit byte whose high order bit is always 0.

Meanwhile, while we're nitpicking, ANSI X3.4-1986 defines the "7-Bit American National Standard Code for Information Interchange (7-Bit ASCII)". It's up to us to interpret "ASCII" as "7-bit ASCII" or "network ASCII" or any other form of ASCII according to context.