Newspeak is a
programming language
A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language.
The description of a programming ...
and
platform
Platform may refer to:
Technology
* Computing platform, a framework on which applications may be run
* Platform game, a genre of video games
* Car platform, a set of components shared by several vehicle models
* Weapons platform, a system or ...
in the tradition of
Smalltalk
Smalltalk is an object-oriented, dynamically typed reflective programming language. It was designed and created in part for educational use, specifically for constructionist learning, at the Learning Research Group (LRG) of Xerox PARC by Alan Ka ...
and
Self
The self is an individual as the object of that individual’s own reflective consciousness. Since the ''self'' is a reference by a subject to the same subject, this reference is necessarily subjective. The sense of having a self—or ''selfhood ...
being developed by a team led by
Gilad Bracha
Gilad Bracha is a software engineer at F5 Networks, and formerly at Google, where he was on the Dart programming language team. He is creator of the Newspeak language, and co-author of the second and third editions of the Java Language Specificati ...
. The platform includes an
integrated development environment
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
(IDE), a
graphical user interface
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
(GUI)
library
A library is a collection of materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or digital access (soft copies) materials, and may be a physical location or a vir ...
, and standard libraries. Starting in 2006,
Cadence Design Systems
Cadence Design Systems, Inc. (stylized as cādence), headquartered in San Jose, California, is an American multinational corporation, multinational computational software company, founded in 1988 by the merger of SDA Systems and ECAD, Inc. The co ...
funded its development and employed the main contributors, but ended funding in January 2009.
Newspeak is a
class
Class or The Class may refer to:
Common uses not otherwise categorized
* Class (biology), a taxonomic rank
* Class (knowledge representation), a collection of individuals or objects
* Class (philosophy), an analytical concept used differentl ...
-based language. Classes may be nested, as in
BETA
Beta (, ; uppercase , lowercase , or cursive ; grc, βῆτα, bē̂ta or ell, βήτα, víta) is the second letter of the Greek alphabet. In the system of Greek numerals, it has a value of 2. In Modern Greek, it represents the voiced labiod ...
. This is one of the key differences between Newspeak and Smalltalk. All names in Newspeak are late-bound, and are interpreted as
message
A message is a discrete unit of communication intended by the source for consumption by some recipient or group of recipients. A message may be delivered by various means, including courier, telegraphy, carrier pigeon and electronic bus.
A ...
sends, as in Self.
Newspeak is distinguished by its unusual approach to modularity. The language has no global namespace. Top level classes act as module declarations. Module declarations are first class values (i.e., they may be stored in variables, passed as parameters, returned from methods, etc.) and are stateless.
Identity
The name ''Newspeak'' is inspired by the
Newspeak
Newspeak is the fictional language of Oceania, a totalitarian superstate that is the setting of the 1949 dystopian novel ''Nineteen Eighty-Four'', by George Orwell. In the novel, the Party created Newspeak to meet the ideological requirements ...
language appearing in
George Orwell
Eric Arthur Blair (25 June 1903 – 21 January 1950), better known by his pen name George Orwell, was an English novelist, essayist, journalist, and critic. His work is characterised by lucid prose, social criticism, opposition to totalitar ...
's dystopian novel
Nineteen Eighty-Four
''Nineteen Eighty-Four'' (also stylised as ''1984'') is a dystopian social science fiction novel and cautionary tale written by the English writer George Orwell. It was published on 8 June 1949 by Secker & Warburg as Orwell's ninth and final ...
. The heading on the programming language's website says "It's
doubleplusgood
Newspeak is the fictional language of Oceania, a totalitarian superstate that is the setting of the 1949 dystopian novel ''Nineteen Eighty-Four'', by George Orwell. In the novel, the Party created Newspeak to meet the ideological requirement ...
". The motive for the name is that Orwell's Newspeak language grew smaller with each revision; Bracha views this as a desirable goal for a programming language.
The language icon is supposed to be
Big Brother's eye, as seen in page 3 of the documentation.
It should not be confused with the safety critical programming language of the same name designed by Ian Currie of
RSRE
The Royal Signals and Radar Establishment (RSRE) was a scientific research establishment within the Ministry of Defence (MoD) of the United Kingdom. It was located primarily at Malvern in Worcestershire, England. The RSRE motto was ''Ubique ...
in 1984 for use with the
VIPER microprocessor VIPER is a 32-bit microprocessor design created by Royal Signals and Radar Establishment (RSRE) in the 1980s, intended to be used in safety-critical systems such as avionics
Avionics (a blend of ''aviation'' and ''electronics'') are the elec ...
. Its principal characteristic was that all exceptional behaviour in programs must be dealt with at compile time.
"Hello World" example
Hello world program
''Hello'' is a salutation or greeting in the English language. It is first attested in writing from 1826. Early uses
''Hello'', with that spelling, was used in publications in the U.S. as early as the 18 October 1826 edition of the ''Norwich C ...
:
HelloBraveNewWorld usingPlatform: platform = (
platform Transcript open show: 'Hello, Oh Brave new world'.
)
References
External links
*
Newspeak Programming Language Draft Specification
{{Smalltalk programming language
Object-oriented programming languages
Smalltalk programming language family
Programming languages created in 2006
Works based on Nineteen Eighty-Four