Jump to content

Deutsch limit

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Isaidnoway (talk | contribs) at 18:40, 16 August 2023 (cite web + id + Clean up). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

An example program in the visual programming language DRAKON
An example program in the visual programming language DRAKON, containing 50 primitives

The Deutsch limit is an aphorism about the information density of visual programming languages originated by L. Peter Deutsch that states:

The problem with visual programming is that you can’t have more than 50 visual primitives on the screen at the same time.[1]

The term was made up by Fred Lakin, after Deutsch made the following comment at a talk on visual programming by Scott Kim and Warren Robinett: "Well, this is all fine and well, but the problem with visual programming languages is that you can't have more than 50 visual primitives on the screen at the same time. How are you going to write an operating system?"[1][2][3]

The primitives in a visual language are the separate graphical elements used to build a program, and having more of them available at the same time allows the programmer to read more information. This limit is sometimes cited as an example of the advantage of textual over visual languages,[4] pointing out the greater information density of text, and posing a difficulty in scaling the language.[5][6]

However, criticisms of the limit include that it is not clear whether a similar limit also exists in textual programming languages;[1] and that the limit could be overcome by applying modularity to visual programming as is commonly done in textual programming.

See also

References

  1. ^ a b c McIntyre, David (March 10, 1998). "Comp.Lang.Visual - Frequently-Asked Questions List". Faqs.org.
  2. ^ Begel, Andrew (May 24, 1996). "LogoBlocks: A Graphical Programming Language for Interacting with the World" (PDF). Cambridge, MA: MIT Media Lab. Archived from the original (PDF) on March 3, 2016. Retrieved June 6, 2014.
  3. ^ Sempere, Andrew (October 2005). "Animatronics, Children and Computation" (PDF). Educational Technology & Society. 8 (4): 11–21. ISSN 1436-4522. Archived from the original (PDF) on April 16, 2006.
  4. ^ Weis, Torben; Knoll, Mirko; Ulbrich, Andreas; Mühl, Gero; Brändle, Alexander (April 2007). "Rapid Prototyping for Pervasive Applications" (PDF). IEEE Computer Society. Archived from the original (PDF) on April 21, 2012.
  5. ^ Ullmer, Brygg; Ishii, Hiroshi (2001). "Emerging Frameworks for Tangible User Interfaces" (PDF). In Carroll, John M. (ed.). Human Computer Interaction in the New Millennium. Archived from the original (PDF) on July 14, 2014.
  6. ^ Ullmer, Brygg; Ishii, Hiroshi; Jacob, Robert J. K. (March 2005). "Token+Constraint Systems for Tangible Interaction with Digital Information". ACM Transactions on Computer-Human Interaction. 12 (1): 81–118. CiteSeerx10.1.1.90.4969.