The DeathStation 9000 (often abbreviated DS9K) is a hypothetical computer architecture often used as part of a discussion about the portability of computer code (often C code). It is imagined to be as obstructive and unhelpful as possible, whilst still conforming to any relevant standards, deliberately acting unexpectedly whenever possible. For instance, the strcmp function in C compares strings and indicates the string that comes first alphabetically under most systems; however, this is not guaranteed by the C99 standard, and on a C99-conforming DS9K it would do little more useful than a check whether strings are equal or not (because it sorts strings by character code, and nothing compels a DS9K's character codes to be in alphabetical order, though digits are required to be in order).
A common, more dramatic example concerns undefined behavior, which is allowed to have any effect. With many C compilers, the statement i = i++; where i is an integer variable will either increment i or leave i with the same value when run (the behavior is undefined). On a DS9K, it is possible (even probable) that executing that statement will cause demons to fly out of the user's nose.
The DS9K is a concept that seems to have developed on Usenet, specifically on the groups comp.lang.c and (to a lesser extent) and comp.std.c.
A website about the DS9K was created, probably as an April Fool's Day joke.
DeathStation 9000 or DS9K is sometimes also used as an adjective, as in "a DS9K endianness", meaning an endianness which is neither big-endian nor little-endian, like the American date format MM/DD/YYYY.
|