Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
System programming language
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Class of computer programming languages}} {{hatnote|For the HP language of the same name, see [[Systems Programming Language]].}} {{bots|deny=FrescoBot}} {{More citations needed|date=April 2022}} A '''system programming language''' is a [[programming language]] used for [[system programming]]; such languages are designed for writing [[system software]], which usually requires different development approaches when compared with application software. [[Edsger W. Dijkstra|Edsger Dijkstra]] referred to these languages as '''machine oriented high order languages''', or '''mohol'''.<ref name="MOHLconfer">{{cite conference |editor-last=van der Poel |editor-first=W. L. |editor-last2=Maarssen |editor-first2=L. A. |title=Machine oriented higher level languages |conference=IFIP Working Conference on Machine Oriented Higher Level Languages (MOHL) |publisher=International Federation for Information Processing |location=Trondheim, Norway |date=27β31 August 1973}} Proceedings published 1974.</ref> General-purpose programming languages tend to focus on generic features to allow programs written in the language to use the same code on different platforms. Examples of such languages include [[ALGOL]] and [[Pascal (programming language)|Pascal]]. This generic quality typically comes at the cost of denying direct access to the machine's internal workings, and this often has negative effects on performance. System languages, in contrast, are designed not for compatibility, but for performance and ease of access to the underlying hardware while still providing high-level programming concepts like [[structured programming]]. Examples include [[Executive Systems Problem Oriented Language|ESPOL]] and [[Systems Programming Language|SPL]], both of which are similar to ALGOL in syntax but tuned to their respective platforms. Others are cross-platform but designed to work close to the hardware, like [[BLISS]], [[JOVIAL]] and [[BCPL]]. Some languages straddle the system and application domains, bridging the gap between these uses. The canonical example is [[C (programming language)|C]], which is used widely for both system and application programming. [[PL/I]] was an early example. Some modern languages also do this such as [[Rust (programming language)|Rust]] and [[Swift (programming language)|Swift]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)