Re: orthogonal specs

Daniel W. Connolly (
Fri, 18 Oct 1996 23:34:24 -0400

Message-Id: <>
To: "David Perrell" <>
Subject: Re: orthogonal specs 
In-reply-to: Your message of "Mon, 09 Sep 1996 10:17:15 MST."
Date: Fri, 18 Oct 1996 23:34:24 -0400
From: "Daniel W. Connolly" <>

In message <>, "David Perrell" writes:
>Daniel W. Connolly wrote:
>> Orthogonal specs are good for system evolution.
>This sounds like an acute observation, but I'm a bit obtuse. Do
>'orthogonal specs' allow implementers to go off on tangents?

From the jargon file (aka the Hacker's dictionary):

orthogonal /adj./ 

[from mathematics] Mutually independent; well separated; sometimes,
irrelevant to. Used in a generalization of its mathematical meaning to
describe sets of primitives or capabilities that, like a vector basis
in geometry, span the entire `capability space' of the system and are
in some sense non-overlapping or mutually independent. For example, in
architectures such as the PDP-11 or VAX where all or nearly all
registers can be used interchangeably in any role with respect to any
instruction, the register set is said to be orthogonal. Or, in logic,
the set of operators `not' and `or' is orthogonal, but the set `nand',
`or', and `not' is not (because any one of these can be expressed in
terms of the others). Also used in comments on human discourse: "This
may be orthogonal to the discussion, but...."