Zero One Infinity
Encyclopedia
The Zero one or infinity (ZOI) rule is a rule of thumb
Rule of thumb
A rule of thumb is a principle with broad application that is not intended to be strictly accurate or reliable for every situation. It is an easily learned and easily applied procedure for approximately calculating or recalling some value, or for making some determination...

 in software design
Software design
Software design is a process of problem solving and planning for a software solution. After the purpose and specifications of software are determined, software developers will design or employ designers to develop a plan for a solution...

 originated by early computing pioneer Willem van der Poel
Willem van der Poel
Willem Louis van der Poel is a pioneering Dutch computer scientist, who is known for designing the ZEBRA computer. In 1950 he obtained an engineering degree in applied science at Delft University of Technology. In 1956 he obtained his PhD degree from the University of Amsterdam...

. It suggests that arbitrary limits on the number of instances of a particular entity should not be allowed. Specifically, an entity should either be forbidden entirely, one should be allowed, or any number (presumably, to the limit of available storage) of them should be allowed. It should not be the software that puts a hard limit on the number of instances of the entity.

Examples of this rule may be found in file directories. The top-most directory has zero parent directories. Each subdirectory has exactly one parent directory. Each directory may contain an arbitrary number of files or subdirectories. An example of a violation of this rule is that some operating systems impose a hard limit of 65,536 files in a directory.

A similar rule is mentioned in Isaac Asimov
Isaac Asimov
Isaac Asimov was an American author and professor of biochemistry at Boston University, best known for his works of science fiction and for his popular science books. Asimov was one of the most prolific writers of all time, having written or edited more than 500 books and an estimated 90,000...

's The Gods Themselves
The Gods Themselves
The Gods Themselves is a 1972 science fiction novel written by Isaac Asimov. It won the Nebula Award for Best Novel in 1972, and the Hugo Award for Best Novel in 1973....

where it is asserted: "[T]he number two is ridiculous and can't exist." referring to universes, deities, etc.

See also

  • Computer programming
    Computer programming
    Computer programming is the process of designing, writing, testing, debugging, and maintaining the source code of computer programs. This source code is written in one or more programming languages. The purpose of programming is to create a program that performs specific operations or exhibits a...

  • Software engineering
    Software engineering
    Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...

  • List of computer programming topics
  • The Art of Computer Programming
    The Art of Computer Programming
    The Art of Computer Programming is a comprehensive monograph written by Donald Knuth that covers many kinds of programming algorithms and their analysis....

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK