Pascal (programming language): Difference between revisions

Content deleted Content added
OAbot (talk | contribs)
m Open access bot: doi updated in citation with #oabot.
m pointed "Apple II" wikilink to "Apple II series" -- (disambiguation)
Line 41:
Pascal was developed on the pattern of the [[ALGOL 60]] language. Wirth was involved in the process to improve the language as part of the [[ALGOL X]] efforts and proposed a version named [[ALGOL W]]. This was not accepted, and the ALGOL X process bogged down. In 1968, Wirth decided to abandon the ALGOL X process and further improve ALGOL W, releasing this as Pascal in 1970.
 
On top of ALGOL's [[variable (computer science)|scalar]]s and [[array data type|array]]s, Pascal enables defining complex datatypes and building dynamic and recursive data structures such as [[list (abstract data type)|list]]s, [[tree (data structure)|tree]]s and [[graph (abstract data type)|graph]]s. Pascal has [[strong and weak typing|strong typing]] on all objects, which means that one type of data cannot be converted to or interpreted as another without explicit conversions. Unlike C (and most languages in the [[C-family]]), Pascal allows [[nested procedure]] definitions to any level of depth, and also allows most kinds of definitions and declarations inside [[subroutines]] (procedures and functions). A program is thus syntactically similar to a single procedure or function. This is similar to the block structure of ALGOL 60, but restricted from arbitrary block statements to just procedures and functions.
 
Pascal became very successful in the 1970s, notably on the burgeoning [[minicomputer]] market. [[Compiler]]s were also available for many [[microcomputer]]s as the field emerged in the late 1970s. It was widely used as a teaching language in [[university]]-level programming courses in the 1980s, and also used in production settings for writing commercial software during the same period. It was displaced by the [[C (programming language)|C programming language]] during the late 1980s and early 1990s as [[UNIX]]-based systems became popular, and especially with the release of [[C++]].
Line 61:
A generation of students used Pascal as an introductory language in undergraduate courses.
 
One of the early successes for the language was the introduction of [[UCSD Pascal]], a version that ran on a custom [[operating system]] that could be ported to different platforms. A key platform was the [[Apple II series|Apple II]], where it saw widespread use as [[Apple Pascal]]. This led to Pascal becoming the primary high-level language used for development in the [[Apple Lisa]], and later, the [[Mac (computer)|Macintosh]]. Parts of the original [[Classic Mac OS|Macintosh operating system]] were hand-translated into [[Motorola 68000]] [[assembly language]] from the Pascal [[source code]].<ref>Hertzfeld, Andy. "[http://www.folklore.org/StoryView.py?project=Macintosh&story=Hungarian.txt&topic=Software%20Design&sortOrder=Sort%20by%20Date&detail=medium Hungarian folklore.org] {{webarchive|url=https://web.archive.org/web/20151118082558/http://www.folklore.org/StoryView.py?project=Macintosh&story=Hungarian.txt&topic=Software%20Design&sortOrder=Sort%20by%20Date&detail=medium |date=2015-11-18}}: Macintosh Stories. Retrieved 2012-03-06.</ref>
 
The [[typesetting]] system [[TeX]] by [[Donald Knuth|Donald E. Knuth]] was written in [[WEB]], the original [[literate programming]] system, based on [[Digital Equipment Corporation|DEC]] [[PDP-10]] Pascal. Successful commercial applications like [[Adobe Photoshop]]<ref>https://www.computerhistory.org/atchm/adobe-photoshop-source-code/ {{Webarchive|url=https://web.archive.org/web/20140507131754/http://www.computerhistory.org/atchm/adobe-photoshop-source-code/ |date=2014-05-07}}, Adobe Photoshop Source Code</ref> were written in [[Macintosh Programmer's Workshop]] Pascal, while applications like [[Total Commander]], [[Skype]]<ref>{{cite web |url=https://www.embarcadero.com/products/rad-studio/application-showcase|title=RAD Studio Application Showcase|date=2021-10-29}}</ref> and Macromedia Captivate were written in Delphi ([[Object Pascal]]). [[Apollo Computer]] used Pascal as the systems programming language for its operating systems beginning in 1980.
 
Variants of Pascal have also been used for everything from research projects to [[PC game]]s and [[embedded system]]s. Newer Pascal compilers exist which are widely used.<ref>[http://www.tiobe.com/index.php/content/paperinfo/tpci/ tiobe.com] {{webarchive|url=https://web.archive.org/web/20120315012717/http://www.tiobe.com/index.php/content/paperinfo/tpci |date=2012-03-15}}, Programming Community Index for January 2011.</ref>