A software change that is neither forward- nor backward-compatible, and which is costly to make and costly to reverse. "Can we install that without causing a flag day for all users?" This term has nothing to do with the use of the word {flag} to mean a variable that has two values. It came into use when a change was made to the definition of the ASCII character set during the development of {Multics}. The change was scheduled for Flag Day (a U.S. holiday), June 14, 1966. The change altered the Multics definition of ASCII from the short-lived 1965 version of the ASCII code to the 1967 version (in draft at the time); this moved code points for braces, vertical bar, and circumflex. See also {backward combatability}. The {Great Renaming} was a flag day. [Most of the changes were made to files stored on {CTSS}, the system used to support Multics development before it became self-hosting.] [As it happens, the first installation of a commercially-produced computer, a Univac I, took place on Flag Day of 1951 --ESR]
[glossary]
[Reference(s) to this entry by made by: {backward combatability}{Great Renaming}]