Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of Coded Character Sets

    Coded Character Sets

    Charles E. MacKenzie · 1979

    Other
    Open LibraryAmazon
    Stats for nerds
    1recommend
    5mentions
    4people
    2013–2024years
    20% recommend80% neutral

    Mentions per year

    2013201520172019202120232024

    What Hacker News says

    1. breadboxJun 2013
      There's a well-documented reason for the placement of (nearly) every single character in ASCII. Unfortunately, not all of the reasons are still very compelling. In fact, a distressingly large number of them have to do with the various techniques for encoding bytes on punch cards.

      For the curious, I recommend the book "Coded Character Sets: History and Development" by Charles E. Mackenzie. It's an older book, and so it's about the pre-Unicode, US-centric codes. Also, most of the pages focus on the many variants of EBCDIC rather than the stabler ASCII standard. But I guarantee that it will give you a lot of historical perspective.

      thread
    2. kragenMay 2024
      it seems somewhat unlikely. let's follow the trail

      the existence of bell characters, of course, predates gordon bell's existence itself (they're in the ita2 baudot-murray code from 01932, two years before his birth) so what we're discussing is specifically the assignment of the ascii bell character to the control character corresponding to bell's middle initial

      it was already ^g in 01963 according to tom jennings's excellent history https://web.archive.org/web/20100414012008/http://wps.com/pr... https://landley.net/history/mirror/ascii.html#ASCII-1963 and at that point bell had just started working at dec three years before. however, he was working on serial communications at dec, and had just been doing research at mit, so it wouldn't be terribly surprising if he, or friends of his from mit or dec, were to sit on the ansi (then asa) committee

      mackenzie's 'coded character sets' from 01980 has a chapter 13 about ascii https://textfiles.meulie.net/bitsaved/Books/Mackenzie_CodedC... but unfortunately it doesn't go into any detail on the composition of the asa committee. note that mackenzie was the ibm thug who invented ebcdic and spent the 60s and 70s trying to kill ascii, so he devotes most of the book to glorifying that catastrophic error; the book is from 01980, the year before ibm shipped its first ascii-supporting equipment, the ibm pc. it's reasonable to see jennings's account as a violent reaction against mackenzie's book, writing the malignant influence of the punched-card codes out of history entirely, though, as we'll see, the original draft of ascii was designed by a punched-card man

      bell's oral history interviews https://www.computerhistory.org/collections/catalog/10270203... don't mention ascii or asa or ansi, so he probably wasn't on the committee, but if it was a connivance by a friend of his, it would be easy to imagine him deliberately not mentioning it

      https://dl.acm.org/doi/pdf/10.1145/363831.363839 is an early (01965) publication of what eventually became ascii-1967, but it doesn't list the subcommittee members; the subcommittee seems to have been x3.2 at that point, though the 01963 document was called x3.4-1963

      http://edition.cnn.com/TECH/computing/9907/06/1963.idg/ says the original proposal was submitted to ansi (though other sources say ansi didn't exist yet) by bob bemer of ibm in 01961. i thought it would be interesting to see if it already had ^g for bel, because bemer would be unlikely to know bell at that point

      in 02002 bemer wrote a 52-page history of ascii himself called 'a story of ascii' https://archive.org/details/ascii-bemer which includes a survey of coded character sets from 01960, including the character set used on the 'lincolnwriter' at mit, where bell had been working, and the pdp-1 for which bell designed the uart, as well as another 40 or so. so it wasn't like there was no contact. as it happens, neither of those two character sets includes a bell character

      the bell character appears in the first version of the ascii proposal in the leftmost column of table 3 on page 17 — but at position 10, from which it was moved to its current position of 7 (^g) after four revisions (iso/tc97 wg b, 01962 may 4, following x3.2/1, which was 01961 september 18). his only comment on why they moved all the control characters around was, 'the controls were regularized and grouped to 7 transmission controls, 6 format effectors, and 5 device controls; the improvement from the haphazardness of the previous proposals is quite apparent.' this was shortly before ibm sent him to the penalty box for promoting ascii, leading to him quitting to go to univac

      at that point there was still disagreement about whether to start the alphabet at the beginning of a 16-codepoint 'column' or, as is done today, one character later, so that a corresponds to 1, b corresponds to 2, etc. so assigning bel to 7 could have ended up with it being ^h. (i'm not clear on whether the ctrl key existed yet, but i'm pretty sure bit-paired keyboards did, on the teletype.)

      unfortunately bemer is also largely silent on the membership of the committee, though he does mention particular members from time to time. unless i've overlooked it, he doesn't mention anyone from mit or dec. the iso meeting was an international thing, with delegations from the us and various european countries, and thus seems particularly unlikely to have redesigned the character set to honor a dec engineer, who the committee members would think of as an american engineer

      so it's probably just a coincidence, but the evidence i've been able to turn up is not very conclusive

      thread
    3. brazzySep 2013
      No. 5 and 6 bit codes existed. And according to Wikipedia (which cites a book "Coded Character Sets, History and Development") making ASCII an 8 bit encoding was considered (not to encode more characters, but to embed BCD data efficiently) but not done because reducing the required bandwith for all text by 12.5% represented a really significant cost reduction at that time.
      thread
    4. kpsJul 2013
      IBM was actually quite involved in the development of ASCII. See Charles E. MacKenzie, Coded Character Sets: History and Development [1] and Bob Bemer's stuff [2].

      [1] http://openlibrary.org/works/OL8019369W/Coded_Character_Sets

      [2] http://www.bobbemer.com/

      thread
    5. kpsFeb 2013
      Several early programming systems did use custom character sets (custom type bars) as well as typewriter-oriented notations like overstrikes, half-line motions for superscripts (powers) and subscripts (indexes), and colour (red half of the ribbon for comments)¹. Except for APL, which had IBM behind it, these tended not to escape their original research environments.

      Relatively large-scale production required I/O devices to share a common character set. These tended to be based on pre-computer character sets (teletypes, punched cards) and were limited in size both by the I/O devices and by storage requirements (don't forget how small and expensive memories were). A lot of work went into choosing character sets.²³⁴

      1963 ASCII had an up arrow ‘↑’ dropped in 1967 in favour of ^ (because furriners wanted accents), and a left arrow ‘←’ dropped in favour of ‘_’.⁵⁶

      ¹Jean Sammet, Programming Languages: History and Fundamentals 978-0137299881
 ²Charles E. MacKenzie, Coded Character Sets: History and Development 978-0201144604
 ³http://www.trailing-edge.com/~bobbemer/SURVEY.HTM ⁴R W Bemer, Design of an improved transmission/data processing code http://dx.doi.org/10.1145/366532.366538
 ⁵American Standard Code for Information Interchange http://www.wps.com/projects/codes/X3.4-1963/index.html
 ⁶Revised U.S.A. Standard Code for Information Interchange http://www.wps.com/J/codes/Revised-ASCII/index.html


      thread

    Related

    Cover of A pattern language
    2007–2026

    A pattern language

    Christopher Alexander
    110 recommend · 368
    Cover of Code
    2008–2026

    Code

    Charles Petzold
    243 recommend · 385
    Cover of The C Programming Language
    2007–2026

    The C Programming Language

    Brian W. Kernighan
    246 recommend · 604
    Cover of Code Complete
    2007–2026

    Code Complete

    Steve McConnell
    393 recommend · 894
    Cover of Structure and Interpretation of Computer Programs
    2007–2026

    Structure and Interpretation of Computer Programs

    Harold Abelson
    347 recommend · 761
    Cover of Types and Programming Languages
    2008–2026

    Types and Programming Languages

    Benjamin C. Pierce
    132 recommend · 321
    Cover of The AWK programming language
    2009–2026

    The AWK programming language

    Alfred V. Aho
    61 recommend · 117
    Cover of Coding the Matrix
    2013–2026

    Coding the Matrix

    Philip N. Klein
    31 recommend · 54