COBOL

COBOL
The COBOL 60 report to CODASYL (April 1960)
ParadigmProcedural, imperative, object-oriented, generic
Designed byHoward Bromberg, Norman Discount, Vernon Reeves, Jean E. Sammet, William Selden, Gertrude Tierney, with indirect influence from Grace Hopper[1]
DevelopersCODASYL, ANSI, ISO/IEC
First appeared1959 (1959)
Stable release
ISO/IEC 1989:2023 / 2023
Typing disciplineWeak, static
Filename extensions.cbl, .cob, .cpy
Major implementations
GnuCOBOL, IBM COBOL, Micro Focus Visual COBOL
Dialects
COBOL/2, DEC COBOL-10, DEC PDP-11 COBOL, DEC PDP-11 COBOL-85, DEC VAX COBOL, DOSVS COBOL, Envyr ICOBOL, Fujitsu COBOL, Hitachi COBOL2002, HP3000 COBOL/II, IBM COBOL SAA, IBM COBOL/400, IBM COBOL/II, IBM Enterprise COBOL, IBM ILE COBOL, IBM OS/VS COBOL, ICL COBOL (VME), Micro Focus ACUCOBOL-GT, Micro Focus COBOL-IT, Micro Focus RM/COBOL, Micro Focus Visual COBOL, Microsoft COBOL, Raincode COBOL, Realia COBOL, Ryan McFarland RM/COBOL, Ryan McFarland RM/COBOL-85, Tandem (NonStop) COBOL, Tandem (NonStop) SCOBOL, UNIVAC COBOL, Unisys MCP COBOL74, Unisys MCP COBOL85, Unix COBOL X/Open, Veryant isCOBOL, Wang VS COBOL
Influenced by
Initial: AIMACO, COMTRAN, FACT, FLOW-MATIC
COBOL 2002:[a] C++, Eiffel, Smalltalk
Influenced
CobolScript,[5] EGL,[6] PL/I,[7] PL/B[8]

COBOL (/ˈkbɒl, -bɔːl/; an acronym for "common business-oriented language") is a compiled English-like computer programming language designed for business use. It is an imperative, procedural and, since 2002, object-oriented language. COBOL is primarily used in business, finance, and administrative systems for companies and governments. COBOL is still widely used in applications deployed on mainframe computers, such as large-scale batch and transaction processing jobs. Many large financial institutions were developing new systems in the language as late as 2006,[9] but most programming in COBOL today is purely to maintain existing applications. Programs are being moved to new platforms, rewritten in modern languages or replaced with other software.[10]

COBOL was designed in 1959 by CODASYL and was partly based on the programming language FLOW-MATIC designed by Grace Hopper. It was created as part of a U.S. Department of Defense effort to create a portable programming language for data processing. It was originally seen as a stopgap, but the Defense Department promptly forced computer manufacturers to provide it, resulting in its widespread adoption.[11] It was standardized in 1968 and has been revised five times. Expansions include support for structured and object-oriented programming. The current standard is ISO/IEC 1989:2023.[12]

COBOL statements have prose syntax such as MOVE x TO y, which was designed to be self-documenting and highly readable. However, it is verbose and uses over 300 reserved words. This contrasts with the succinct and mathematically inspired syntax of other languages (in this case, y = x;).

COBOL code is split into four divisions (identification, environment, data, and procedure) containing a rigid hierarchy of sections, paragraphs and sentences. Lacking a large standard library, the standard specifies 43 statements, 87 functions and just one class.

Academic computer scientists were generally uninterested in business applications when COBOL was created and were not involved in its design; it was (effectively) designed from the ground up as a computer language for business, with an emphasis on inputs and outputs, whose only data types were numbers and strings of text.[13]

COBOL has been criticized for its verbosity, design process, and poor support for structured programming. These weaknesses result in monolithic programs that are hard to comprehend as a whole, despite their local readability.

For years, COBOL has been assumed as a programming language for business operations in mainframes,[14] although in recent years, many COBOL operations have been moved to cloud computing.[15]

  1. ^ Cite error: The named reference creators was invoked but never defined (see the help page).
  2. ^ Cite error: The named reference SW95 was invoked but never defined (see the help page).
  3. ^ Cite error: The named reference Arranga98 was invoked but never defined (see the help page).
  4. ^ Arranga, Edmund C.; Coyle, Frank P. (March 1997). "Cobol: Perception and Reality". Computer. 30 (3): 127. doi:10.1109/2.573683. ISSN 0018-9162.
  5. ^ Imajo, Tetsuji; et al. (September 2000). COBOL Script: a business-oriented scripting language. Enterprise Distributed Object Computing Conference. Makuhari, Japan: IEEE. doi:10.1109/EDOC.2000.882363. ISBN 0769508650.
  6. ^ Ho, Wing Hong (7 May 2007). "Introduction to EGL" (PDF). IBM Software Group. Archived from the original (PDF) on 13 January 2019. Retrieved 12 January 2019.
  7. ^ Radin, George (1978). Wexelblat, Richard L. (ed.). The early history and characteristics of PL/I. History of Programming Languages. Academic Press (published 1981). p. 572. doi:10.1145/800025.1198410. ISBN 0127450408.
  8. ^ "What is PL/B - The Programming Language for Business?". sysmaker.com. Infopro, Inc. Retrieved 22 April 2022. ... conversion to an alternate, extended COBOL or to ANSI COBOL is very difficult, if at all possible
  9. ^ Cite error: The named reference Computerworld Not Dead Yet was invoked but never defined (see the help page).
  10. ^ Mitchell, Robert L. (14 March 2012). "Brain drain: Where Cobol systems go from here". Computerworld. Retrieved 9 February 2015.
  11. ^ Ensmenger, Nathan L. (2009). The Computer Boys Take Over: Computers, Programmers, and the Politics of Technical Expertise. MIT Press. p. 100. ISBN 978-0262050937. LCCN 2009052638.
  12. ^ ISO/IEC JTC 1/SC 22/WG 4 2023.
  13. ^ Ferguson, Andrew. "A History of Computer Programming Languages". cs.brown.edu. Retrieved 12 March 2018.
  14. ^ "COmmon Business Oriented Language".
  15. ^ Groenfeldt, Tom. "Covid Accelerates Banks' Mainframe Migration to Cloud". Forbes.


Cite error: There are <ref group=lower-alpha> tags or {{efn}} templates on this page, but the references will not show without a {{reflist|group=lower-alpha}} template or {{notelist}} template (see the help page).


From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne