Uma equipe de fabricantes de computadores, usuários e universitários liderados por Grace Hopper se reúne para discutir a criação de uma nova linguagem de programação que seria chamada COBOL.
COBOL (; um acrônimo para "linguagem comum orientada a negócios") é uma linguagem de programação de computador compilada semelhante ao inglês projetada para uso comercial. É uma linguagem imperativa, procedural e, desde 2002, orientada a objetos. COBOL é usado principalmente em negócios, finanças e sistemas administrativos para empresas e governos. COBOL ainda é amplamente utilizado em aplicativos implantados em computadores mainframe, como lotes de grande escala e trabalhos de processamento de transações. No entanto, devido à sua popularidade em declínio e à aposentadoria de programadores COBOL experientes, os programas estão sendo migrados para novas plataformas, reescritos em linguagens modernas ou substituídos por pacotes de software. A maior parte da programação em COBOL agora é puramente para manter os aplicativos existentes; no entanto, muitas grandes instituições financeiras ainda estavam desenvolvendo novos sistemas em COBOL até 2006. COBOL foi projetado em 1959 pela CODASYL e foi parcialmente baseado na linguagem de programação FLOW-MATIC projetada por Grace Hopper. Ele foi criado como parte de um esforço do Departamento de Defesa dos EUA para criar uma linguagem de programação portátil para processamento de dados. Ele foi originalmente visto como um paliativo, mas o Departamento de Defesa prontamente forçou os fabricantes de computadores a fornecê-lo, resultando em sua ampla adoção. Foi padronizado em 1968 e desde então foi revisado quatro vezes. As expansões incluem suporte para programação estruturada e orientada a objetos. O padrão atual é ISO/IEC 1989:2014. As instruções COBOL têm uma sintaxe semelhante ao inglês, que foi projetada para ser autodocumentada e altamente legível. No entanto, é verboso e usa mais de 300 palavras reservadas. Em contraste com a sintaxe moderna e sucinta como y = x;, COBOL tem uma sintaxe mais parecida com o inglês (neste caso, MOVE x TO y).
O código COBOL é dividido em quatro divisões (identificação, ambiente, dados e procedimento) contendo uma hierarquia rígida de seções, parágrafos e frases. Na falta de uma grande biblioteca padrão, o padrão especifica 43 instruções, 87 funções e apenas uma classe.
Os cientistas da computação acadêmicos geralmente não estavam interessados em aplicativos de negócios quando o COBOL foi criado e não estavam envolvidos em seu design; foi (efetivamente) projetado desde o início como uma linguagem de computador para negócios, com ênfase em entradas e saídas, cujos únicos tipos de dados eram números e sequências de texto.
O COBOL foi criticado ao longo de sua vida por sua verbosidade, processo de design e suporte deficiente para programação estruturada. Esses pontos fracos resultam em programas monolíticos e detalhados (destinados a ser semelhantes ao inglês) que não são facilmente compreensíveis.
Durante anos, o COBOL foi assumido como uma linguagem de programação para operações de negócios em mainframes, embora nos últimos anos tenha surgido um interesse crescente na migração de operações COBOL para computação em nuvem.
Grace Brewster Murray Hopper (nascida Murray; 9 de dezembro de 1906 - 1 de janeiro de 1992) foi uma cientista da computação americana e contra-almirante da Marinha dos Estados Unidos. Uma das primeiras programadoras do computador Harvard Mark I, ela foi uma pioneira da programação de computadores que inventou um dos primeiros linkers. Hopper foi a primeira a conceber a teoria das linguagens de programação independentes de máquina, e a linguagem de programação FLOW-MATIC que ela criou usando essa teoria foi posteriormente estendida para criar o COBOL, uma linguagem de programação de alto nível inicial ainda em uso hoje.
Antes de ingressar na Marinha, Hopper obteve um Ph.D. em matemática pela Universidade de Yale e foi professor de matemática no Vassar College. Hopper tentou se alistar na Marinha durante a Segunda Guerra Mundial, mas foi rejeitada porque tinha 34 anos. Em vez disso, ela se juntou às Reservas da Marinha. Hopper começou sua carreira na computação em 1944, quando trabalhou na equipe Harvard Mark I liderada por Howard H. Aiken. Em 1949, ela se juntou à Eckert–Mauchly Computer Corporation e fez parte da equipe que desenvolveu o computador UNIVAC I. Na Eckert–Mauchly, ela gerenciou o desenvolvimento de um dos primeiros compiladores COBOL. Ela acreditava que uma linguagem de programação baseada em inglês era possível. Seu compilador converteu termos em inglês em código de máquina entendido por computadores. Em 1952, Hopper terminou seu programa vinculador (originalmente chamado de compilador), que foi escrito para o sistema A-0. Durante seu serviço de guerra, ela foi coautora de três artigos baseados em seu trabalho no Harvard Mark 1.
Em 1954, Eckert–Mauchly escolheu Hopper para liderar seu departamento de programação automática, e ela liderou o lançamento de algumas das primeiras linguagens compiladas como FLOW-MATIC. Em 1959, ela participou do consórcio CODASYL, que consultou Hopper para orientá-los na criação de uma linguagem de programação independente de máquina. Isso levou à linguagem COBOL, que foi inspirada por sua ideia de uma linguagem baseada em palavras em inglês. Em 1966, ela se aposentou da Reserva Naval, mas em 1967 a Marinha a chamou de volta ao serviço ativo. Ela se aposentou da Marinha em 1986 e encontrou trabalho como consultora para a Digital Equipment Corporation, compartilhando suas experiências de computação.
O destróier de mísseis guiados da classe Arleigh Burke da Marinha dos EUA, USS Hopper, foi nomeado para ela, assim como o supercomputador Cray XE6 "Hopper" no NERSC. Durante sua vida, Hopper recebeu 40 títulos honorários de universidades de todo o mundo. Uma faculdade da Universidade de Yale foi renomeada em sua homenagem. Em 1991, ela recebeu a Medalha Nacional de Tecnologia. Em 22 de novembro de 2016, ela recebeu postumamente a Medalha Presidencial da Liberdade pelo presidente Barack Obama.