A domain-specific language (DSL) is a computer language specialized to a particular application domain. This is in contrast to a general-purpose language
(GPL), which is broadly applicable across domains. There are a wide
variety of DSLs, ranging from widely used languages for common domains,
such as HTML for web pages, down to languages used by only one or a few pieces of software, such as MUSH soft code. DSLs can be further subdivided by the kind of language, and include domain-specific markup languages, domain-specific modeling languages (more generally, specification languages), and domain-specific programming languages.
Special-purpose computer languages have always existed in the computer
age, but the term "domain-specific language" has become more popular due
to the rise of domain-specific modeling. Simpler DSLs, particularly ones used by a single application, are sometimes informally called mini-languages.
The line between general-purpose languages and domain-specific
languages is not always sharp, as a language may have specialized
features for a particular domain but be applicable more broadly, or
conversely may in principle be capable of broad application but in
practice used primarily for a specific domain. For example, Perl was originally developed as a text-processing and glue language, for the same domain as AWK and shell scripts, but was mostly used as a general-purpose programming language later on. By contrast, PostScript is a Turing-complete language, and in principle can be used for any task, but in practice is narrowly used as a page description language.
Use
The design and use of appropriate DSLs is a key part of domain engineering,
by using a language suitable to the domain at hand – this may consist
of using an existing DSL or GPL, or developing a new DSL. Language-oriented programming
considers the creation of special-purpose languages for expressing
problems as standard part of the problem-solving process. Creating a
domain-specific language (with software to support it), rather than
reusing an existing language, can be worthwhile if the language allows a
particular type of problem or solution to be expressed more clearly
than an existing language would allow and the type of problem in
question reappears sufficiently often. Pragmatically, a DSL may be
specialized to a particular problem domain, a particular problem
representation technique, a particular solution technique, or other
aspects of a domain.
Overview
A
domain-specific language is created specifically to solve problems in a
particular domain and is not intended to be able to solve problems
outside of it (although that may be technically possible). In contrast,
general-purpose languages are created to solve problems in many
domains. The domain can also be a business area. Some examples of
business areas include:
life insurance policies (developed internally by a large insurance enterprise)
combat simulation
salary calculation
billing
A domain-specific language is somewhere between a tiny programming language and a scripting language, and is often used in a way analogous to a programming library.
The boundaries between these concepts are quite blurry, much like the
boundary between scripting languages and general-purpose languages.
In design and implementation
Domain-specific
languages are languages (or often, declared syntaxes or grammars) with
very specific goals in design and implementation. A domain-specific
language can be one of a visual diagramming language, such as those
created by the Generic Eclipse Modeling System, programmatic abstractions, such as the Eclipse Modeling Framework, or textual languages. For instance, the command line utility grep has a regular expression syntax which matches patterns in lines of text. The sed
utility defines a syntax for matching and replacing regular
expressions. Often, these tiny languages can be used together inside a shell to perform more complex programming tasks.
The line between domain-specific languages and scripting languages
is somewhat blurred, but domain-specific languages often lack low-level
functions for filesystem access, interprocess control, and other
functions that characterize full-featured programming languages,
scripting or otherwise. Many domain-specific languages do not compile to
byte-code or executable code, but to various kinds of media objects: GraphViz exports to PostScript, GIF, JPEG, etc., where Csound compiles to audio files, and a ray-tracing domain-specific language like POV compiles to graphics files. A computer language like SQL
presents an interesting case: it can be deemed a domain-specific
language because it is specific to a specific domain (in SQL's case,
accessing and managing relational databases), and is often called from
another application, but SQL has more keywords and functions than many
scripting languages, and is often thought of as a language in its own
right, perhaps because of the prevalence of database manipulation in
programming and the amount of mastery required to be an expert in the
language.
Further blurring this line, many domain-specific languages have
exposed APIs, and can be accessed from other programming languages
without breaking the flow of execution or calling a separate process,
and can thus operate as programming libraries.
Programming tools
Some
domain-specific languages expand over time to include full-featured
programming tools, which further complicates the question of whether a
language is domain-specific or not. A good example is the functional languageXSLT,
specifically designed for transforming one XML graph into another,
which has been extended since its inception to allow (particularly in
its 2.0 version) for various forms of filesystem interaction, string and
date manipulation, and data typing.
In model-driven engineering, many examples of domain-specific languages may be found like OCL, a language for decorating models with assertions or QVT, a domain-specific transformation language. However, languages like UML are typically general-purpose modeling languages.
To summarize, an analogy might be useful: a Very Little Language
is like a knife, which can be used in thousands of different ways, from
cutting food to cutting down trees. A domain-specific language is like
an electric drill: it is a powerful tool with a wide variety of uses,
but a specific context, namely, putting holes in things. A General
Purpose Language is a complete workbench, with a variety of tools
intended for performing a variety of tasks. Domain-specific languages
should be used by programmers who, looking at their current workbench,
realize they need a better drill and find that a particular
domain-specific language provides exactly that.
Domain-specific language topics
External and Embedded Domain Specific Languages
DSLs implemented via an independent interpreter or compiler are known as External Domain Specific Languages. Well known examples include LaTeX or AWK. A separate category known as Embedded (or Internal) Domain Specific Languages
are typically implemented within a host language as a library and tend
to be limited to the syntax of the host language, though this depends on
host language capabilities.
Usage patterns
There are several usage patterns for domain-specific languages:
Processing with standalone tools, invoked via direct user operation, often on the command line or from a Makefile (e.g., grep for regular expression matching, sed, lex, yacc, the GraphViz toolset, etc.)
Domain-specific languages which are implemented using programming
language macro systems, and which are converted or expanded into a host
general purpose language at compile-time or realtime
embedded domain-specific language (eDSL),
implemented as libraries which exploit the syntax of their host general
purpose language or a subset thereof while adding domain-specific
language elements (data types, routines, methods, macros etc.). (e.g. jQuery, React, Embedded SQL, LINQ)
Domain-specific languages which are called (at runtime) from programs written in general purpose languages like C or Perl,
to perform a specific function, often returning the results of
operation to the "host" programming language for further processing;
generally, an interpreter or virtual machine for the domain-specific language is embedded into the host application (e.g. format strings, a regular expression engine)
Domain-specific languages which are embedded into user applications
(e.g., macro languages within spreadsheets) and which are (1) used to
execute code that is written by users of the application, (2)
dynamically generated by the application, or (3) both.
Many domain-specific languages can be used in more than one way.
DSL code embedded in a host language may have special syntax support,
such as regexes in sed, AWK, Perl or JavaScript, or may be passed as
strings.
Design goals
Adopting
a domain-specific language approach to software engineering involves
both risks and opportunities. The well-designed domain-specific language
manages to find the proper balance between these.
Domain-specific languages have important design goals that contrast with those of general-purpose languages:
Domain-specific languages are less comprehensive.
Domain-specific languages are much more expressive in their domain.
Domain-specific languages should exhibit minimal redundancy.
Idioms
In programming, idioms are methods imposed by programmers to handle common development tasks, e.g.:
Ensure data is saved before the window is closed.
Edit code whenever command-line parameters change because they affect program behavior.
General purpose programming languages rarely support such idioms, but domain-specific languages can describe them, e.g.:
A script can automatically save data.
A domain-specific language can parameterize command line input.
The GML scripting language used by GameMaker Studio
is a domain-specific language targeted at novice programmers to easily
be able to learn programming. While the language serves as a blend of
multiple languages including Delphi, C++, and BASIC,
there is a lack of structures, data types, and other features of a
full-fledged programming language. Many of the built-in functions are sandboxed
for the purpose of easy portability. The language primarily serves to
make it easy for anyone to pick up the language and develop a game.
ColdFusion Markup Language
ColdFusion's
associated scripting language is another example of a domain-specific
language for data-driven websites.
This scripting language is used to weave together languages and services
such as Java, .NET, C++, SMS, email, email servers, http, ftp,
exchange, directory services, and file systems for use in websites.
The ColdFusion Markup Language (CFML) includes a set of tags that can be used in ColdFusion pages to interact with data
sources, manipulate data, and display output. CFML tag syntax is similar to HTML element syntax.
Erlang OTP
The Erlang Open Telecom Platform was originally designed for use inside Ericsson
as a domain-specific language. The language itself offers a platform of
libraries to create finite state machines, generic servers and event
managers that quickly allow an engineer to deploy applications, or
support libraries, that have been shown in industry benchmarks to
outperform other languages intended for a mixed set of domains, such as C
and C++. The language is now officially open source and can be
downloaded from their website.
FilterMeister
FilterMeister
is a programming environment, with a programming language that is based
on C, for the specific purpose of creating Photoshop-compatible
image processing filter plug-ins; FilterMeister runs as a Photoshop
plug-in itself and it can load and execute scripts or compile and export
them as independent plug-ins.
Although the FilterMeister language reproduces a significant portion of
the C language and function library, it contains only those features
which can be used within the context of Photoshop plug-ins and adds a
number of specific features only useful in this specific domain.
MediaWiki templates
The Template feature of MediaWiki is an embedded domain-specific language whose fundamental purpose is to support the creation of page templates and the transclusion (inclusion by reference) of MediaWiki pages into other MediaWiki pages.
Software engineering uses
There has been much interest in domain-specific languages to improve the productivity and quality of software engineering.
Domain-specific language could possibly provide a robust set of tools
for efficient software engineering. Such tools are beginning to make
their way into the development of critical software systems.
The Software Cost Reduction Toolkit is an example of this. The toolkit is a suite of utilities including a specification editor to create a requirements specification, a dependency graph browser to display variable dependencies, a consistency checker to catch missing cases in well-formed formulas in the specification, a model checker and a theorem prover
to check program properties against the specification, and an invariant
generator that automatically constructs invariants based on the
requirements.
A newer development is language-oriented programming, an integrated software engineering methodology based mainly on creating, optimizing, and using domain-specific languages.
Besides parsing domain-specific languages, metacompilers are
useful for generating a wide range of software engineering and analysis
tools. The meta-compiler methodology is often found in program transformation systems.
Metacompilers that played a significant role in both computer science and the computer industry include Meta-II, and its descendant TreeMeta.
Unreal Engine before version 4 and other games
Unreal and Unreal Tournament unveiled a language called UnrealScript. This allowed for rapid development of modifications compared to the competitor Quake (using the Id Tech 2 engine). The Id Tech engine used standard C
code meaning C had to be learned and properly applied, while
UnrealScript was optimized for ease of use and efficiency. Similarly,
the development of more recent games introduced their own specific
languages, one more common example is Lua for scripting.
Rules Engines for Policy Automation
Various Business Rules Engines have been developed for automating policy and business rules used in both government and private industry. ILOG, Oracle Policy Automation, DTRules, Drools and others provide support for DSLs aimed to support various problem domains. DTRules goes so far as to define an interface for the use of multiple DSLs within a Rule Set.
The purpose of Business Rules Engines is to define a
representation of business logic in as human-readable fashion as
possible. This allows both subject-matter experts
and developers to work with and understand the same representation of
the business logic. Most Rules Engines provide both an approach to
simplifying the control structures for business logic (for example,
using Declarative Rules or Decision Tables) coupled with alternatives to programming syntax in favor of DSLs.
Statistical modelling languages
Statistical modelers have developed domain-specific languages such as R (an implementation of the S language),
Bugs, Jags, and Stan. These languages provide a syntax for describing a Bayesian model and generate a method for solving it using simulation.
Generate model and services to multiple programming Languages
Generate object handling and services based on an Interface Description Language
for a domain-specific language such as JavaScript for web applications,
HTML for documentation, C++ for high-performance code, etc. This is
done by cross-language frameworks such as Apache Thrift or Google Protocol Buffers.
Gherkin
Gherkin
is a language designed to define test cases to check the behavior of
software, without specifying how that behavior is implemented. It is
meant to be read and used by non-technical users using a natural
language syntax and a line-oriented design.
The tests defined with Gherkin must then be implemented in a general
programming language. Then, the steps in a Gherkin program acts as a
syntax for method invocation accessible to non-developers.
Other examples
Other prominent examples of domain-specific languages include:
Domain-specific languages allow solutions to be expressed in the
idiom and at the level of abstraction of the problem domain. The idea
is that domain experts themselves may understand, validate, modify, and
often even develop domain-specific language programs. However, this is
seldom the case.
Domain-specific languages allow validation at the domain level. As long as the language constructs are safe any sentence written with them can be considered safe.
Domain-specific languages can help to shift the development of
business information systems from traditional software developers to the
typically larger group of domain-experts who (despite having less
technical expertise) have a deeper knowledge of the domain.
Domain-specific languages are easier to learn, given their limited scope.
Some of the disadvantages:
Cost of learning a new language
Limited applicability
Cost of designing, implementing, and maintaining a domain-specific language as well as the tools required to develop with it (IDE)
Finding, setting, and maintaining proper scope.
Difficulty of balancing trade-offs between domain-specificity and general-purpose programming language constructs.
Potential loss of processor efficiency compared with hand-coded software.
Proliferation of similar non-standard domain-specific languages, for
example, a DSL used within one insurance company versus a DSL used
within another insurance company.
Non-technical domain experts can find it hard to write or modify DSL programs by themselves.
Increased difficulty of integrating the DSL with other components of
the IT system (as compared to integrating with a general-purpose
language).
Low supply of experts in a particular DSL tends to raise labor costs.
Harder to find code examples.
Tools for designing domain-specific languages
JetBrains MPS is a tool for designing domain-specific languages. It uses projectional editing
which allows overcoming the limits of language parsers and building DSL
editors, such as ones with tables and diagrams. It implements
language-oriented programming. MPS combines an environment for language
definition, a language workbench, and an Integrated Development Environment (IDE) for such languages.
MontiCore
is a language workbench for the efficient development of
domain-specific languages. It processes an extended grammar format that
defines the DSL and generates Java components for processing the DSL
documents.
Xtext
is an open-source software framework for developing programming
languages and domain-specific languages (DSLs). Unlike standard parser
generators, Xtext generates not only a parser but also a class model for
the abstract syntax tree. In addition, it provides a fully featured,
customizable Eclipse-based IDE.
Racket
is a cross-platform language toolchain including native code, JIT and
Javascript compiler, IDE (in addition to supporting Emacs, Vim, VSCode
and others) and command line tools designed to accommodate creating both
domain-specific and general purpose languages.
A sustainable business, or a green business, is an enterprise
that has minimal negative impact or potentially a positive effect on the
global or local environment, community, society, or economy—a business that strives to meet the triple bottom line. They cluster under different groupings and the whole is sometimes referred to as "green capitalism." Often, sustainable businesses have progressive environmental and human rights policies. In general, business is described as green if it matches the following four criteria:
It incorporates principles of sustainability into each of its business decisions.
It supplies environmentally friendly products or services that replaces demand for nongreen products and/or services.
It is greener than traditional competition.
It has made an enduring commitment to environmental principles in its business operations.
Terminology
A sustainable business is any organization that participates in Environmentally friendly
or green activities to ensure that all processes, products, and
manufacturing activities adequately address current environmental
concerns while maintaining a profit. In other words, it is a business
that “meets the needs of the present [world] without compromising the
ability of future generations to meet their own needs.”
It is the process of assessing how to design products that will take
advantage of the current environmental situation and how well a
company’s products perform with renewable resources.
The Brundtland Report emphasized that sustainability is a three-legged stool of people, planet, and profit.
Sustainable businesses with the supply chain try to balance all three
through the triple-bottom-line concept—using sustainable development and
sustainable distribution to affect the environment, business growth, and the society.
Everyone affects the sustainability
of the marketplace and the planet in some way. Sustainable development
within a business can create value for customers, investors, and the
environment. A sustainable business must meet customer needs while, at
the same time, treating the environment well.
To succeed in such an approach, where stakeholder balancing and joint
solutions are key, requires a structural approach. One philosophy, that
includes many different tools and methods, is the concept of Sustainable
Enterprise Excellence. Another is the adoption of the concept of responsible growth.
Sustainability is often confused with corporate social responsibility
(CSR), though the two are not the same. Bansal and DesJardine (2014)
state that the notion of ‘time’ discriminates sustainability from CSR
and other similar concepts. Whereas ethics, morality, and norms
permeate CSR, sustainability only obliges businesses to make
intertemporal trade-offs to safeguard intergenerational equity. Short-termism is the bane of sustainability.
While CSR and sustainability are not the same, they are related to each
other. Determining salaries, implementing new technology, and retiring
old plants all have an impact on the firms stakeholder's and the natural
environment.Green
business has been seen as a possible mediator of economic-environmental
relations, and if proliferated, would serve to diversify our economy,
even if it has a negligible effect at lowering atmospheric CO2
levels. The definition of "green jobs" is ambiguous, but it is
generally agreed that these jobs, the result of green business, should
be linked to "clean energy"
and contribute to the reduction of greenhouse gases. These corporations
can be seen as generators of not only "green energy", but as producers
of new "materialities" that are the product of the technologies, these
firms developed and deployed.
Environmental sphere
A
major initiative of sustainable businesses is to eliminate or decrease
the environmental harm caused by the production and consumption of their
goods.
The impact of such human activities in terms of the number of
greenhouse gases produced can be measured in units of carbon dioxide and
is referred to as the carbon footprint. The carbon footprint
concept is derived from the ecological footprint analysis, which
examines the ecological capacity required to support the consumption of
products.
Businesses take a wide range of green initiatives. One of the
most common examples is the act of "going paperless" or sending
electronic correspondence in lieu of paper when possible. On a higher level, examples of sustainable business practices include: refurbishing used products (e.g., tuning up lightly used commercial fitness equipment for resale); revising production processes
to eliminate waste (such as using a more accurate template to cut out
designs), and choosing nontoxic raw materials and processes. For
example, Canadian farmers have found that hemp is a sustainable
alternative to rapeseed in their traditional crop rotation; hemp grown for fiber or seed requires no pesticides or herbicides.
Sustainable business leaders also take into account the life cycle costs for the items they produce. Input costs must be considered regarding regulations, energy use, storage, and disposal. Designing for the environmentDFE
is also an element of sustainable business. This process enables users
to consider the potential environmental impacts of a product and the
process used to make that product.
The many possibilities for adopting green practices have led to
considerable pressure being put upon companies from consumers,
employees, government regulators, and other stakeholders. Some companies have resorted to greenwashing
instead of making meaningful changes, merely marketing their products
in ways that suggest green practices. For example, various producers in
the bamboo fiber industry have been taken to court for advertising their
products as more "green" than they are.
Still, countless other companies have taken the sustainability trend
seriously and are enjoying profits. In their book “Corporate
Sustainability in International Comparison”, Schaltegger et al. (2014)
analyzes the current state of corporate sustainability management and
corporate social responsibility across eleven countries. Their research
is based on an extensive survey focusing on the companies’ intention to
pursue sustainability management (i.e. motivation; issues), the
integration of sustainability in the organization (i.e. connecting
sustainability to the core business; involving corporate functions;
using drivers of business cases for sustainability) and the actual
implementation of sustainability management measures (i.e. stakeholder
management; sustainability management tools and standards;
measurements). The Gort Cloud
written by Richard Seireeni, (2009), documents the experiences of
sustainable businesses in America and their reliance on the vast but
invisible green community, referred to as the gort cloud, for support and a market.
Green investment firms are consequently attracting unprecedented interest. In the UK, for instance, the Green Investment Bank
is devoted exclusively to supporting renewable domestic energy.
However, the UK and Europe as a whole are falling behind the impressive
pace set by developing nations in terms of green development.
Thus, green investment firms are creating more and more opportunities
to support sustainable development practices in emerging economies. By
providing micro-loans
and larger investments, these firms assist small business owners in
developing nations who seek business education, affordable loans, and
new distribution networks for their "green" products.
An effective way for businesses to contribute towards waste
reduction is to remanufacture products so that the materials used can
have a longer life-span.
Sustainable Businesses
The Harvard Business School business historian Geoffrey Jones (academic) has traced the historical origins of green business back to pioneering start-ups in organic food and wind and solar energy before World War 1. Among large corporations, Ford Motor Company occupies an odd role in the story of sustainability. Ironically, founder Henry Ford was a pioneer in the sustainable business realm, experimenting with plant-based fuels during the days of the Model T.
Ford Motor Company also shipped the Model A truck in crates that then
became the vehicle floorboards at the factory destination. This was a
form of upcycling, retaining high quality in a closed-loop industrial cycle.
Furthermore, the original auto body was made of a stronger-than-steel
hemp composite. Today, of course, Fords aren't made of hemp nor do they
run on the most sensible fuel. Currently, Ford's claim to eco-friendly fame is the use of seat fabric made from 100% post-industrial materials and renewable soy
foam seat bases. Ford executives recently appointed the company’s first
senior vice president of sustainability, environment, and safety
engineering. This position is responsible for establishing a long-range
sustainability strategy and environmental policy, developing the
products and processes necessary to satisfy customers and society as a
whole while working toward energy independence.
It remains to be seen whether Ford will return to its founder's vision
of a petroleum-free automobile, a vehicle powered by the remains of
plant matter.
The automobile manufacturer Subaru
has also made efforts to tackle sustainability. In 2008 a Subaru
assembly plant in Lafayette became the first auto manufacturer to
achieve zero landfill
status when the plant implemented sustainable policies. The company
successfully managed to implement a plan that increased refuse recycling
to 99.8%.
In 2012, the corporation increased the reuse of Styrofoam by 9%. And
from the year 2008 to the year 2012, environmental incidents and
accidents reduced from 18 to 4.
Smaller companies such as Nature's Path, an organic cereal and snack making business, have also made sustainability gains in the 21st century. CEO Arran Stephens and his associates have ensured that the quickly growing company's products are produced without toxic farm chemicals.
Furthermore, employees are encouraged to find ways to reduce
consumption. Sustainability is an essential part of corporate
discussions. Another example comes from Salt Spring Coffee, a company created in 1996 as a certified organic, fair trade, coffee producer. In recent years they have become carbon neutral, lowering emissions by reducing long-range trucking and using bio-diesel in delivery trucks, upgrading to energy efficient equipment and purchasing carbon offsets. The company claims to offer the first carbon neutral coffee sold in Canada. Salt Spring Coffee was recognized by the David Suzuki Foundation in the 2010 report Doing Business in a New Climate.
A third example comes from Korea, where rice husks are used as a
nontoxic packaging for stereo components and other electronics. The same
material is later recycled to make bricks.
Some companies in the mining and specifically gold mining
industries are attempting to move towards more sustainable practices,
especially given that the industry is one of the most environmentally
destructive. Indeed, regarding gold mining, Northwestern University scientists have, in the laboratory, discovered an inexpensive and environmentally sustainable method that uses simple cornstarch—instead of cyanide—to isolate gold from raw materials in a selective manner. Such a method will reduce the amount of cyanide released into the environment during gold extraction from raw ore, with one of the Northwestern University
scientists, Sir Fraser Stoddart stating that: “The elimination of
cyanide from the gold industry is of the utmost importance
environmentally".
Additionally, the retail jewelry industry is now trying to be more
sustainable, with companies using green energy providers and recycling more, as well as preventing the use of mined-so called 'virgin gold' by applying re-finishing methods on pieces and re-selling them. Furthermore, the customer may opt for Fairtrade Gold, which gives a better deal to small scale and artisanal miners, and is an element of sustainable business.
However, not all think that mining can be sustainable and much more
must be done, noting that mining in general is in need of greater
regional and international legislation and regulation, which is a valid
point given the huge impact mining has on the planet and the huge number
of products and goods that are made wholly or partly from mined materials.
In the luxury sector, in 2012, the group Kering developed the
"Environmental Profit & Loss account" (EP&L) accounting method
to track the progress of its sutainability goals, a strategy aligned
with the UN Sustainable Development Goals.
In 2019, on a request from the President Emmanuel Macron,
François-Henri Pinault, Chairman and CEO of the luxury group Kering,
presented the Fashion Pact during the summit, an initiative signed by 32
fashion firms committing to concrete measures to reduce their
environmental impact. By 2020, 60 firms joined the Fashion Pact.
Social sphere
Organizations
that give back to the community, whether through employees volunteering
their time or through charitable donations are often considered socially sustainable.
Organizations also can encourage education in their communities by
training their employees and offering internships to younger members of
the community. Practices such as these increase the education level and
quality of life in the community.
For a business to be truly sustainable, it must sustain not only
the necessary environmental resources, but also social
resources—including employees, customers (the community), and its
reputation.
A term that is directly relates to the social aspect of sustainability is Environmental justice.
Sustainability and social justice are directly connected to one
another, and seeing these as separate unrelated issues can lead to more
problems for the environment and potentially businesses.
Consumers and Marketing
When
people are choosing to purchase goods or services, they care what a
company stands for. This includes social and environmental aspects that
may not have seemed important in business in the past. Consumers
nowadays are demanding more sustainable goods and services. Because of this demand, companies must focus on their environmental impact to gain consumer loyalty.
Because ecological awareness can be treated as a choice of personal
taste rather than a necessity, it can be a method to try to increase
capital from a marketing standpoint. When marketing a product or service it is important that a business is actually following through with environmental claims,
and not just pretending to be in order to gain customers. False
advertising leads to distrust among consumers and can ultimately end a
company.
Greenwashing
With
the idea of sustainability becoming more prevalent in the last decade,
businesses must be aware of laws surrounding it and the potential legal
implications. The Federal Trade Commission (FTC), Green guides
are essentially a rulebook for businesses on how to avoid deceiving
consumers with false advertising. This often is a problem when companies
make vague or false environmental claims about a product or service they are selling. When this occurs it can be called "greenwashing". Greenwashing can also be described as the act of overexaggerating the beneficial effect the product has on the environment.
If companies do not follow this guide they could be subject to legal
ramifications. It is also important for green businesses to invest in
experienced legal practitioners who can understand and can provide
counsel on the FTC guidelines.
Corporate sustainability
strategies can aim to take advantage of sustainable revenue
opportunities, while protecting the value of business against increasing
energy costs,
the costs of meeting regulatory requirements, changes in the way
customers perceive brands and products, and the volatile price of
resources.
Not all eco-strategies can be incorporated into a company's
Eco-portfolio immediately. The widely practiced strategies include:
Innovation, Collaboration, Process Improvement and Sustainability
reporting.
Innovation & Technology: This introverted method of
sustainable corporate practices focuses on a company's ability to change
its products and services towards less waste production.
Collaboration: The formation of networks with similar or partner companies facilitates knowledge sharing and propels innovation.
Process Improvement: Continuous process surveying and improvement
are essential to reduction in waste. Employee awareness of company-wide
sustainability plan further aids the integration of new and improved
processes.
Sustainability Reporting: Periodic reporting of company performance
in relation to goals. These goals are often incorporated into the
corporate mission (as in the case of Ford Motor Co.).
Greening the Supply Chain: Sustainable procurement is important for
any sustainability strategy as a company's impact on the environment is
much bigger than the products that they consume. The B Corporation (certification) model is a good example of one that encourages companies to focus on this.
Additionally, companies might consider implementing a sound
measurement and management system with readjustment procedures, as well
as a regular forum for all stakeholders to discuss sustainability
issues.
The Sustainability Balanced Scorecard is a performance measurement and
management system aiming at balancing financial and non-financial as
well as short and long-term measures. It explicitly integrates
strategically relevant environmental, social and ethical goals into the
overall performance management system and supports strategic sustainability management.
Standards
Enormous
economic and population growth worldwide in the second half of the
twentieth century aggravated the factors that threaten health and the
world — ozone depletion, climate change, resource depletion, fouling of natural resources, and extensive loss of biodiversity and habitat.
In the past, the standard approaches to environmental problems
generated by business and industry have been regulatory-driven
"end-of-the-pipe" remediation efforts. In the 1990s, efforts by
governments, NGOs, corporations, and investors began to grow to develop awareness and plans for investment in business sustainability.
One critical milestone was the establishment of the ISO 14000 standards whose development came as a result of the Rio Summit on the Environment held in 1992. ISO 14001
is the cornerstone standard of the ISO 14000 series. It specifies a
framework of control for an Environmental Management System against
which an organization can be certified by a third party. Other ISO 14000
Series Standards are actually guidelines, many to help you achieve
registration to ISO 14001. They include the following:
ISO 14004 provides guidance on the development and implementation of environmental management systems
ISO 14010 provides general principles of environmental auditing (now superseded by ISO 19011)
ISO 14011 provides specific guidance on audit an environmental management system (now superseded by ISO 19011)
ISO 14012 provides guidance on qualification criteria for environmental auditors and lead auditors (now superseded by ISO 19011)
ISO 14013/5 provides audit program review and assessment material.
ISO 14020+ labeling issues
ISO 14030+ provides guidance on performance targets and monitoring within an Environmental Management System
While the initial focus of academic, industry, and policy activities was mainly focused on the development of re-X (recycling, remanufacturing, reuse, recovery,
...) technology, it soon became clear that the technological
capabilities increasingly exceed their implementation. For the
transition towards a Circular Economy, different stakeholders have to
work together. This shifted attention towards business model innovation
as a key leverage for 'circular' technology adaption.
Circular business models are business models that are closing,
narrowing, slowing, intensifying, and dematerializing loops, to minimize
the resource inputs into and the waste and emission leakage out of the
organizational system. This comprises recycling measures (closing),
efficiency improvements (narrowing), use phase extensions (slowing or
extending), a more intense use phase (intensifying), and the
substitution of product utility by service and software solutions
(dematerializing).
Implementing
sustainable business practices may have an effect on profits and a
firm's financial 'bottom line'. However, during a time where
environmental awareness is popular, green strategies are likely to be
embraced by employees, consumers, and other stakeholders. Organisations
concerned about the environmental impact of their business are taking
initiatives to invest in sustainable business practices. In fact, a positive correlation has been reported between environmental performance and economic performance.
Businesses trying to implement sustainable business need to have
insights on balancing the social equity, economic prosperity and
environmental quality elements.
If an organization’s current business model is inherently
unsustainable, becoming truly sustainable requires a complete makeover
of the business model
(e.g. from selling cars to offering car sharing and other mobility
services). This can present a major challenge due to the differences
between the old and the new model and the respective skills, resources
and infrastructure needed. A new business model can offer major
opportunities by entering or even creating new markets and reaching new
customer groups.
The main challenges faced in the sustainable business practices
implementation by businesses in developing countries include lack of
skilled personnel, technological challenges, socio-economic challenges,
organisational challenges and lack of proper policy framework. Skilled personnel plays a crucial role in quality management, enhanced
compliance with international quality standards, preventative and
operational maintenance attitude necessary to ensure sustainable
business. In the absence of skilled labour forces, companies fail to implement a sustainable business model.
Another major challenge to the effective implementation of sustainable
business is organisational challenges. Organisational challenges to the
implementation of sustainable business activities arise from the
difficulties associated with the planning, implementation and evaluation
of sustainable business models.
Addressing the organisational challenges for the implementation of
sustainable business practices need to begin by analysing the whole
supply chain of the business rather than focusing solely on the
company's internal operations.
Another major challenge is the lack of an appropriate policy framework
for sustainable business. Companies comply with the lowest economic,
social and environmental sustainability standards, when in fact the true
sustainability in business operation can be achieved when the business
is focused beyond compliance with integrated strategy and passion and
purpose.
Companies leading the way in sustainable business practices can
take advantage of sustainable revenue opportunities: according to the Department for Business, Innovation and Skills the UK green economy to grow by 4.9 to 5.5 percent a year by 2015, and the average internal rate of return on energy efficiency investments for large businesses is 48%.
A 2013 survey suggests that demand for green products appears to be
increasing: 27% of respondents said they are more likely to buy a
sustainable product and/or service than 5 years ago. Furthermore, sustainable business practices may attract talent and generate tax breaks.
(in SI units). It says that the electromagnetic force on a charge q is a combination of a force in the direction of the electric field E proportional to the magnitude of the field and the quantity of charge, and a force at right angles to the magnetic field B and the velocity v
of the charge, proportional to the magnitude of the field, the charge,
and the velocity. Variations on this basic formula describe the magnetic
force on a current-carrying wire (sometimes called Laplace force), the electromotive force in a wire loop moving through a magnetic field (an aspect of Faraday's law of induction), and the force on a moving charged particle.
Historians suggest that the law is implicit in a paper by James Clerk Maxwell, published in 1865. Hendrik Lorentz arrived at a complete derivation in 1895, identifying the contribution of the electric force a few years after Oliver Heaviside correctly identified the contribution of the magnetic force.
Lorentz force law as the definition of E and B
Trajectory of a particle with a positive or negative charge q under the influence of a magnetic field B, which is directed perpendicularly out of the screen.
Beam
of electrons moving in a circle, due to the presence of a magnetic
field. Purple light revealing the electron's path in this Teltron tube is created by the electrons colliding with gas molecules.
In many textbook treatments of classical electromagnetism, the Lorentz force law is used as the definition of the electric and magnetic fields E and B. To be specific, the Lorentz force is understood to be the following empirical statement:
The electromagnetic force F on a test charge at a given point and time is a certain function of its charge q and velocity v, which can be parameterized by exactly two vectors E and B, in the functional form:
This is valid, even for particles approaching the speed of light (that is, magnitude of v, |v| ≈ c). So the two vector fieldsE and B
are thereby defined throughout space and time, and these are called the
"electric field" and "magnetic field". The fields are defined
everywhere in space and time with respect to what force a test charge
would receive regardless of whether a charge is present to experience
the force.
As a definition of E and B,
the Lorentz force is only a definition in principle because a real
particle (as opposed to the hypothetical "test charge" of
infinitesimally-small mass and charge) would generate its own finite E and B fields, which would alter the electromagnetic force that it experiences.
In addition, if the charge experiences acceleration, as if forced into a
curved trajectory, it emits radiation that causes it to lose kinetic
energy. See for example Bremsstrahlung and synchrotron light. These effects occur through both a direct effect (called the radiation reaction force) and indirectly (by affecting the motion of nearby charges and currents).
Equation
Charged particle
Lorentz force F on a charged particle (of charge q) in motion (instantaneous velocity v). The E field and B field vary in space and time.
The force F acting on a particle of electric chargeq with instantaneous velocity v, due to an external electric field E and magnetic field B, is given by (in SI units):
where × is the vector cross product (all boldface quantities are vectors). In terms of Cartesian components, we have:
In general, the electric and magnetic fields are functions of
the position and time. Therefore, explicitly, the Lorentz force can be
written as:
in which r is the position vector of the charged particle, t is time, and the overdot is a time derivative.
A positively charged particle will be accelerated in the same linear orientation as the E field, but will curve perpendicularly to both the instantaneous velocity vector v and the B field according to the right-hand rule (in detail, if the fingers of the right hand are extended to point in the direction of v and are then curled to point in the direction of B, then the extended thumb will point in the direction of F).
The term qE is called the electric force, while the term q(v × B) is called the magnetic force. According to some definitions, the term "Lorentz force" refers specifically to the formula for the magnetic force, with the total electromagnetic force (including the electric force) given some other (nonstandard) name. This article will not follow this nomenclature: In what follows, the term "Lorentz force" will refer to the expression for the total force.
The magnetic force component of the Lorentz force manifests
itself as the force that acts on a current-carrying wire in a magnetic
field. In that context, it is also called the Laplace force.
The Lorentz force is a force exerted by the electromagnetic field
on the charged particle, that is, it is the rate at which linear
momentum is transferred from the electromagnetic field to the particle.
Associated with it is the power which is the rate at which energy is
transferred from the electromagnetic field to the particle. That power
is
Notice that the magnetic field does not contribute to the power because
the magnetic force is always perpendicular to the velocity of the
particle.
For a continuous charge distribution in motion, the Lorentz force equation becomes:
where is the force on a small piece of the charge distribution with charge . If both sides of this equation are divided by the volume of this small piece of the charge distribution , the result is:
where is the force density (force per unit volume) and is the charge density (charge per unit volume). Next, the current density corresponding to the motion of the charge continuum is
so the continuous analogue to the equation is
The total force is the volume integral over the charge distribution:
In terms of and , another way to write the Lorentz force (per unit volume) is
where is the speed of light and ∇· denotes the divergence of a tensor field. Rather than the amount of charge and its velocity in electric and magnetic fields, this equation relates the energy flux (flow of energy per unit time per unit distance) in the fields to the force exerted on a charge distribution. See Covariant formulation of classical electromagnetism for more details.
The density of power associated with the Lorentz force in a material medium is
If we separate the total charge and total current into their
free and bound parts, we get that the density of the Lorentz force is
where: is the density of free charge; is the polarization density; is the density of free current; and is the magnetization
density. In this way, the Lorentz force can explain the torque applied
to a permanent magnet by the magnetic field. The density of the
associated power is
Equation in cgs units
The above-mentioned formulae use SI units which are the most common. In older cgs-Gaussian units, which are somewhat more common among some theoretical physicists as well as condensed matter experimentalists, one has instead
where c is the speed of light. Although this equation looks slightly different, it is completely equivalent, since one has the following relations:
where ε0 is the vacuum permittivity and μ0 the vacuum permeability. In practice, the subscripts "cgs" and "SI" are always omitted, and the unit system has to be assessed from context.
History
Lorentz' theory of electrons. Formulas for the Lorentz force (I, ponderomotive force) and the Maxwell equations for the divergence of the electrical field E (II) and the magnetic field B (III), La théorie electromagnétique de Maxwell et son application aux corps mouvants, 1892, p. 451. V is the velocity of light.
Early attempts to quantitatively describe the electromagnetic force
were made in the mid-18th century. It was proposed that the force on
magnetic poles, by Johann Tobias Mayer and others in 1760, and electrically charged objects, by Henry Cavendish in 1762, obeyed an inverse-square law. However, in both cases the experimental proof was neither complete nor conclusive. It was not until 1784 when Charles-Augustin de Coulomb, using a torsion balance, was able to definitively show through experiment that this was true. Soon after the discovery in 1820 by Hans Christian Ørsted that a magnetic needle is acted on by a voltaic current, André-Marie Ampère
that same year was able to devise through experimentation the formula
for the angular dependence of the force between two current elements.
In all these descriptions, the force was always described in terms of
the properties of the matter involved and the distances between two
masses or charges rather than in terms of electric and magnetic fields.
The modern concept of electric and magnetic fields first arose in the theories of Michael Faraday, particularly his idea of lines of force, later to be given full mathematical description by Lord Kelvin and James Clerk Maxwell.
From a modern perspective it is possible to identify in Maxwell's 1865
formulation of his field equations a form of the Lorentz force equation
in relation to electric currents, although in the time of Maxwell it was not evident how his equations related to the forces on moving charged objects. J. J. Thomson
was the first to attempt to derive from Maxwell's field equations the
electromagnetic forces on a moving charged object in terms of the
object's properties and external fields. Interested in determining the
electromagnetic behavior of the charged particles in cathode rays, Thomson published a paper in 1881 wherein he gave the force on the particles due to an external magnetic field as
Thomson derived the correct basic form of the formula, but, because of
some miscalculations and an incomplete description of the displacement current, included an incorrect scale-factor of a half in front of the formula. Oliver Heaviside
invented the modern vector notation and applied it to Maxwell's field
equations; he also (in 1885 and 1889) had fixed the mistakes of
Thomson's derivation and arrived at the correct form of the magnetic
force on a moving charged object. Finally, in 1895, Hendrik Lorentz
derived the modern form of the formula for the electromagnetic force
which includes the contributions to the total force from both the
electric and the magnetic fields. Lorentz began by abandoning the
Maxwellian descriptions of the ether and conduction. Instead, Lorentz
made a distinction between matter and the luminiferous aether
and sought to apply the Maxwell equations at a microscopic scale. Using
Heaviside's version of the Maxwell equations for a stationary ether and
applying Lagrangian mechanics (see below), Lorentz arrived at the correct and complete form of the force law that now bears his name.
Trajectories of particles due to the Lorentz force
Charged particle drifts
in a homogeneous magnetic field. (A) No disturbing force (B) With an
electric field, E (C) With an independent force, F (e.g. gravity) (D) In
an inhomogeneous magnetic field, grad H
In many cases of practical interest, the motion in a magnetic field of an electrically charged particle (such as an electron or ion in a plasma) can be treated as the superposition of a relatively fast circular motion around a point called the guiding center and a relatively slow drift
of this point. The drift speeds may differ for various species
depending on their charge states, masses, or temperatures, possibly
resulting in electric currents or chemical separation.
Significance of the Lorentz force
While
the modern Maxwell's equations describe how electrically charged
particles and currents or moving charged particles give rise to electric
and magnetic fields, the Lorentz force law completes that picture by
describing the force acting on a moving point charge q in the presence of electromagnetic fields. The Lorentz force law describes the effect of E and B
upon a point charge, but such electromagnetic forces are not the entire
picture. Charged particles are possibly coupled to other forces,
notably gravity and nuclear forces. Thus, Maxwell's equations do not
stand separate from other physical laws, but are coupled to them via the
charge and current densities. The response of a point charge to the
Lorentz law is one aspect; the generation of E and B by currents and charges is another.
Right-hand rule for a current-carrying wire in a magnetic field B
When a wire carrying an electric current is placed in a magnetic
field, each of the moving charges, which comprise the current,
experiences the Lorentz force, and together they can create a
macroscopic force on the wire (sometimes called the Laplace force).
By combining the Lorentz force law above with the definition of
electric current, the following equation results, in the case of a
straight, stationary wire:
where ℓ is a vector whose magnitude is the length of wire, and whose direction is along the wire, aligned with the direction of conventional current charge flow I.
If the wire is not straight but curved, the force on it can be computed by applying this formula to each infinitesimal segment of wire , then adding up all these forces by integration. Formally, the net force on a stationary, rigid wire carrying a steady current I is
This is the net force. In addition, there will usually be torque, plus other effects if the wire is not perfectly rigid.
One application of this is Ampère's force law,
which describes how two current-carrying wires can attract or repel
each other, since each experiences a Lorentz force from the other's
magnetic field. For more information, see the article: Ampère's force law.
EMF
The magnetic force (qv × B) component of the Lorentz force is responsible for motionalelectromotive force (or motional EMF),
the phenomenon underlying many electrical generators. When a conductor
is moved through a magnetic field, the magnetic field exerts opposite
forces on electrons and nuclei in the wire, and this creates the EMF.
The term "motional EMF" is applied to this phenomenon, since the EMF is
due to the motion of the wire.
In other electrical generators, the magnets move, while the
conductors do not. In this case, the EMF is due to the electric force (qE) term in the Lorentz Force equation. The electric field in question is created by the changing magnetic field, resulting in an induced EMF, as described by the Maxwell–Faraday equation (one of the four modern Maxwell's equations).
Both of these EMFs, despite their apparently distinct origins,
are described by the same equation, namely, the EMF is the rate of
change of magnetic flux through the wire. (This is Faraday's law of induction, see below.) Einstein's special theory of relativity was partially motivated by the desire to better understand this link between the two effects.
In fact, the electric and magnetic fields are different facets of the
same electromagnetic field, and in moving from one inertial frame to
another, the solenoidal vector field portion of the E-field can change in whole or in part to a B-field or vice versa.
is the magnetic flux through the loop, B is the magnetic field, Σ(t) is a surface bounded by the closed contour ∂Σ(t), at time t, dA is an infinitesimal vector area element of Σ(t) (magnitude is the area of an infinitesimal patch of surface, direction is orthogonal to that surface patch).
The sign of the EMF is determined by Lenz's law. Note that this is valid for not only a stationary wire – but also for a moving wire.
Let Σ(t) be the moving wire, moving together without rotation and with constant velocity v and Σ(t) be the internal surface of the wire. The EMF around the closed path ∂Σ(t) is given by:
where
is the electric field and dℓ is an infinitesimal vector element of the contour ∂Σ(t).
NB: Both dℓ and dA have a sign ambiguity; to get the correct sign, the right-hand rule is used, as explained in the article Kelvin–Stokes theorem.
The above result can be compared with the version of Faraday's
law of induction that appears in the modern Maxwell's equations, called
here the Maxwell–Faraday equation:
The Maxwell–Faraday equation also can be written in an integral form using the Kelvin–Stokes theorem.
So we have, the Maxwell Faraday equation:
and the Faraday Law,
The two are equivalent if the wire is not moving. Using the Leibniz integral rule and that div B = 0, results in,
and using the Maxwell Faraday equation,
since this is valid for any wire position it implies that,
Faraday's law of induction holds whether the loop of wire is
rigid and stationary, or in motion or in process of deformation, and it
holds whether the magnetic field is constant in time or changing.
However, there are cases where Faraday's law is either inadequate or
difficult to use, and application of the underlying Lorentz force law is
necessary. See inapplicability of Faraday's law.
If the magnetic field is fixed in time and the conducting loop moves through the field, the magnetic flux ΦB linking the loop can change in several ways. For example, if the B-field varies with position, and the loop moves to a location with different B-field, ΦB will change. Alternatively, if the loop changes orientation with respect to the B-field, the B ⋅ dA differential element will change because of the different angle between B and dA, also changing ΦB. As a third example, if a portion of the circuit is swept through a uniform, time-independent B-field,
and another portion of the circuit is held stationary, the flux linking
the entire closed circuit can change due to the shift in relative
position of the circuit's component parts with time (surface ∂Σ(t) time-dependent). In all three cases, Faraday's law of induction then predicts the EMF generated by the change in ΦB.
Note that the Maxwell Faraday's equation implies that the Electric Field E is non conservative when the Magnetic Field B varies in time, and is not expressible as the gradient of a scalar field, and not subject to the gradient theorem since its rotational is not zero.
(Notice that the coordinates and the velocity components
should be treated as independent variables, so the del operator acts
only on , not on ; thus, there is no need of using Feynman's subscript notation in the equation above). Using the chain rule, the total derivative of is:
so that the above expression becomes:
With v = ẋ, we can put the equation into the convenient Euler–Lagrange form
The Lagrangian for a charged particle of mass m and charge q in an electromagnetic field equivalently describes the dynamics of the particle in terms of its energy, rather than the force exerted on it. The classical expression is given by:
where A and ϕ are the potential fields as above. The quantity can be thought as a velocity-dependent potential function. Using Lagrange's equations, the equation for the Lorentz force given above can be obtained again.
Derivation of Lorentz force from classical Lagrangian (SI units)
For an A field, a particle moving with velocity v = ṙ has potential momentum, so its potential energy is . For a ϕ field, the particle's potential energy is .
(same for y and z). So calculating the partial derivatives:
equating and simplifying:
and similarly for the y and z directions. Hence the force equation is:
The potential energy depends on the velocity of the particle, so the force is velocity dependent, so it is not conservative.
The relativistic Lagrangian is
The action is the relativistic arclength of the path of the particle in spacetime, minus the potential energy contribution, plus an extra contribution which quantum mechanically is an extra phase a charged particle gets when it is moving along a vector potential.
Derivation of Lorentz force from relativistic Lagrangian (SI units)
Substituting the components of the covariant electromagnetic tensor F yields
Using the components of covariant four-velocity yields
The calculation for α = 2, 3 (force components in the y and z directions) yields similar results, so collecting the 3 equations into one:
and since differentials in coordinate time dt and proper time dτ are related by the Lorentz factor,
so we arrive at
This is precisely the Lorentz force law, however, it is important to note that p is the relativistic expression,
Lorentz force in spacetime algebra (STA)
The electric and magnetic fields are dependent on the velocity of an observer,
so the relativistic form of the Lorentz force law can best be exhibited
starting from a coordinate-independent expression for the
electromagnetic and magnetic fields , and an arbitrary time-direction, . This can be settled through Space-Time Algebra (or the geometric algebra of space-time), a type of Clifford algebra defined on a pseudo-Euclidean space, as
and
is a space-time bivector (an oriented plane segment, just like a vector
is an oriented line segment), which has six degrees of freedom
corresponding to boosts (rotations in space-time planes) and rotations
(rotations in space-space planes). The dot product with the vector
pulls a vector (in the space algebra) from the translational part,
while the wedge-product creates a trivector (in the space algebra) who
is dual to a vector which is the usual magnetic field vector.
The relativistic velocity is given by the (time-like) changes in a
time-position vector , where
(which shows our choice for the metric) and the velocity is
The proper (invariant is an inadequate term because no transformation has been defined) form of the Lorentz force law is simply
Note that the order is important because between a bivector and a
vector the dot product is anti-symmetric. Upon a spacetime split like
one can obtain the velocity, and fields as above yielding the usual
expression.
Lorentz force in general relativity
In the general theory of relativity the equation of motion for a particle with mass and charge , moving in a space with metric tensor and electromagnetic field , is given as
where ( is taken along the trajectory), , and .
The equation can also be written as
where is the Christoffel symbol (of the torsion-free metric connection in general relativity), or as