Rule of least power

In programming, the rule of least power is a design principle that "suggests choosing the least powerful [computer] language suitable for a given purpose".[1] Stated alternatively, given a choice among computer languages, classes of which range from descriptive (or declarative) to procedural, the less procedural, more descriptive the language one chooses, the more one can do with the data stored in that language.

This rule is an application of the principle of least privilege to protocol design.[2]

Rationale

Originally proposed as an axiom of good design, the term is an extension of the KISS principle applied to choosing among a range of languages ranging from

As explained by Tim Berners-Lee:[3]

Computer Science in the 1960s to 80s spent a lot of effort making languages that were as powerful as possible. Nowadays we have to appreciate the reasons for picking not the most powerful solution but the least powerful. The reason for this is that the less powerful the language, the more you can do with the data stored in that language. If you write it in a simple declarative form, anyone can write a program to analyze it in many ways. The Semantic Web is an attempt, largely, to map large quantities of existing data onto a common language so that the data can be analyzed in ways never dreamed of by its creators. If, for example, a web page with weather data has RDF describing that data, a user can retrieve it as a table, perhaps average it, plot it, deduce things from it in combination with other information. At the other end of the scale is the weather information portrayed by the cunning Java applet. While this might allow a very cool user interface, it cannot be analyzed at all. The search engine finding the page will have no idea of what the data is or what it is about. The only way to find out what a Java applet means is to set it running in front of a person.
gollark: ZWJ indents *are* the future and you cannot stop me.
gollark: I'm going to keep using zero width joiner indentation.
gollark: Try osmarks internet radio™.
gollark: GTech™ is manipulating the refractive index of the local air.
gollark: Did you know? It was already too late. The bees had approached. GTech™ dominion over reality had begun, and none could escape. One night the bees reached the horizon of the sun, and all the specks began. The swarms of specks, all over the city, and even over the whole town. It would be next year that the bees reached the horizon on the night of December 14, 2011. After a week of resting they came to the end of October. They were too exhausted to continue their journey even upon midnight. In the morning they returned to the city to continue their "trip" that came along with the plague. The evening afternoon after dawn, they crossed to the eastern edge of the city, and began their journey on the night of December 15th. The next day, the bees went on their trip to the west of the city. They went on their journey along the northern coast with an aeroplane. When they arrived in the coast of the east of the city, they had a night sleep, as they had not come along the northern coast any further.

References

  1. W3C. "The Rule of Least Power". Retrieved 2016-02-24.
  2. Meredith L. Patterson (2011-12-28). The Science of Insecurity. 28th Chaos Communication Congress.
  3. Berners-Lee, Tim. "Axioms of Web architecture". Retrieved 2002-01-14.
  • The Rule of Least Power, W3C, TAG Finding 23 February 2006
  • B. Carpenter, Editor: "Architectural Principles of the Internet" Internet Architecture Board, June 1996, RFC 1958
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.