DeathStation 9000
From Wikipedia, the free encyclopedia
The DeathStation 9000 (often abbreviated DS9K) is a fictional 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 simply compiling the code will cause demons to fly out of the user's nose.[1]
The DS9K is a concept that seems to have developed on Usenet, specifically on the groups comp.lang.c and (to a lesser extent) comp.lang.c++.
A website about the DS9K was created, probably as an April Fool's Day joke.[2]
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.