Browse Definitions :
Definition

Rule of Least Power

Contributor(s): Matthew Haughn

The Rule of Least Power is the notion that a programmer should use the least powerful programming language required to code for a given requirement.

The rule was the topic of a paper of the same name, released by Noah Mendalson and Tim Berners Lee on w3.org in February 2006. The idea is an extension of the KISS principle (Keep it Simple, Stupid).

Promoting reusability of code is one of the main ideas behind the Rule of Least Power as the code of less powerful languages is more descriptive and easier analyzed. More powerful languages that are better capable of approaching a range of problems are of a less transparent and more procedural nature. This makes the code easier to comprehend by humans or analyzed by programs and enables greater information sharing on the web. The principle is thought to favor declarative programming languages as they allow for more flexibility and adaptability than their procedural counterparts, imperative programming languages.

Another benefit of the descriptive nature of less powerful languages is that it is easy to understand what the program does and how it operates. This can ease analysis, and thereby security and debugging. It is often the case that with programs developed in more powerful languages, the only way to be sure of what the program will do is to run it. To debug it may require running through its functions manually or using with automation.

This was last updated in November 2018

Continue Reading About Rule of Least Power

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.

SearchCompliance

  • risk assessment

    Risk assessment is the identification of hazards that could negatively impact an organization's ability to conduct business.

  • PCI DSS (Payment Card Industry Data Security Standard)

    The Payment Card Industry Data Security Standard (PCI DSS) is a widely accepted set of policies and procedures intended to ...

  • risk management

    Risk management is the process of identifying, assessing and controlling threats to an organization's capital and earnings.

SearchSecurity

SearchHealthIT

SearchDisasterRecovery

  • call tree

    A call tree is a layered hierarchical communication model that is used to notify specific individuals of an event and coordinate ...

  • Disaster Recovery as a Service (DRaaS)

    Disaster recovery as a service (DRaaS) is the replication and hosting of physical or virtual servers by a third party to provide ...

  • cloud disaster recovery (cloud DR)

    Cloud disaster recovery (cloud DR) is a combination of strategies and services intended to back up data, applications and other ...

SearchStorage

  • RAM (Random Access Memory)

    RAM (Random Access Memory) is the hardware in a computing device where the operating system (OS), application programs and data ...

  • business impact analysis (BIA)

    Business impact analysis (BIA) is a systematic process to determine and evaluate the potential effects of an interruption to ...

  • M.2 SSD

    An M.2 SSD is a solid-state drive that is used in internally mounted storage expansion cards of a small form factor.

Close