LINC 4GL - LINC 4GL

LINC ("Logic and Information Network Compiler") é uma linguagem de programação de quarta geração , usada principalmente em sistemas de computador Unisys .

Fundo

O LINC foi originalmente desenvolvido como um atalho (ou modelo) por dois programadores para reproduzir e automatizar a produção de aplicativos de computador para diferentes empresas, que tinham requisitos e especificações semelhantes. Os requisitos eram semelhantes, pois as empresas seguiam um modelo de negócios comum e genérico.

Ou seja, esses negócios lidavam com "commodities", ou "peças", ou "fornecedores" ou "clientes" (chamados de "componentes" na terminologia do LINC). Eles foram "fabricados" ou "montados", ou "comprados" ou "vendidos" (ações denominadas "eventos" na terminologia do LINC).

Esses componentes e eventos eram as "especificações de interface" ou "ispecs" e continham as definições de banco de dados, designs de tela e regras de negócios do sistema de aplicativo.

O LIRC (Logic and Information Report Compiler) fazia parte do LINC e foi desenvolvido para permitir ao programador produzir relatórios (por exemplo, "ordens de compra", "faturas", "notas de crédito", "notas de remessa", "notas fiscais"). As informações nesses relatórios foram acessadas usando várias visualizações definidas pelo usuário desses componentes e eventos chamados "perfis".

Como os relatórios são executados como uma tarefa separada (como um thread de execução separado), eles também podem ser gravados para serem executados como um processo em segundo plano; isto é, ele poderia adormecer por um período de tempo ou até ser acordado, para realizar algum processamento, e então adormecer novamente.

Parte da razão para a introdução dessa nova terminologia foi tornar o sistema mais fácil para os programadores. Isso os isolou de grande parte da tecnologia subjacente. (Da mesma forma, nomes diferentes foram usados ​​intencionalmente para estruturas de controle: DO.WHEN em vez de IF ou LOOP e LOOK.UP ou DETERMINE em vez de READ, com as instruções OPEN e CLOSE geradas automaticamente.)

O que permitiu a LINC tornar os programadores muito mais eficientes e os sistemas de aplicativos que eles produziram mais fáceis de ler e manter, e diferenciou-a de ser simplesmente mais uma linguagem de alto nível de terceira geração , foi a suposição, o uso e a confiança total do LINC em todas as instalações disponível e empacotado com o computador Burroughs para o qual foi escrito: sistema operacional, linguagem de controle de tarefa, linguagem de programação COBOL, sistema de gerenciamento de banco de dados, definição de rede, terminal de usuário, etc. (Veja também "histórico" abaixo.)

A partir da versão 11, seu caráter mudou. Onde as especificações LINC (e LIRC) eram anteriormente mantidas em arquivos de código-fonte, agora eram mantidas em um banco de dados (projetado e desenvolvido usando o LINC 4GL) e sujeitas a validação automática rigorosa. O novo sistema baseado em LINC no qual as especificações foram armazenadas foi denominado LINC interativo ou LINC Development Environment (LDE).

A confiança extensiva na "pintura da tela" do terminal (ou seja, "simulação" de uma tela de entrada de dados CRT ) foi usada para auxiliar na definição do sistema. por exemplo, para definir os atributos do banco de dados de um componente (nome, comprimento, alfa (numérico), regras de validação, etc., e para definir layouts de relatório).

No início de 1990, uma nova ferramenta baseada em PC para desenvolver especificações LINC foi lançada, o LINC Development Assistant (LDA). LDA foi escrito em uma mistura de Smalltalk e C ++ em vez de LINC 4GL (o último dos quais não foi projetado para ser executado em um computador pessoal). A partir da versão 17, pretendia-se que todo o desenvolvimento fosse feito com LDA.

Agora o LINC é conhecido como Unisys Enterprise Application Environment (EAE) e pode gerar código COBOL para mainframes Burroughs & Sperry, Microsoft Windows e várias plataformas Unix e Linux . Ele também irá gerar clientes front-end de GUI em

além de compilar o código gerado e implantar bancos de dados para corresponder à especificação. Os bancos de dados suportados incluem Burroughs DMSII , Sperry RDMS , banco de dados Oracle e Microsoft SQL Server .

Atualização recente:

A Unisys está substituindo o EAE pelo Unisys Agile Business Suite (AB Suite). A linguagem LDL é promovida a LDL +, com novos recursos orientados a objetos. O ambiente de desenvolvimento faz uso do Microsoft Visual Studio IDE. A abordagem Model Driven é estendida com um Diagrama de Classes baseado em UML integrado com todo o código-fonte da solução, de forma que uma atualização de ida e volta seja alcançada. Mudanças nas Regras de Negócios podem resultar em mudanças na representação UML e vice-versa.

O AB Suite 4.0 usa o Visual Studio 2012 e se integra ao Team Foundation Server 2012.

O AB Suite gera para um ambiente .NET ou um ambiente ClearPath MCP.

Com o AB Suite, um desenvolvedor precisa escrever menos código do que em um ambiente C # ou Java tradicional.

História

O LINC foi originalmente desenvolvido por dois programadores de computador da Nova Zelândia ( Gil Simpson e Peter Hoskins) enquanto trabalhavam na Arábia Saudita no início dos anos 1980. Ele foi desenvolvido exclusivamente para operação com um único modelo de sistema de computador Burroughs compreendendo um sistema totalmente integrado de:

etc.

O sistema LINC criou o código-fonte 3rd GL COBOL (aplicativo), DMSII (definição do banco de dados), NDLII (descrição da rede) e WFL (controle de trabalho). As próprias instruções de controle de trabalho foram subsequentemente executadas para compilar os outros elementos e criar um sistema integrado de banco de dados, aplicativos e rede de terminal de usuário.

Burroughs comprou os direitos de venda do produto em 1982, enquanto o desenvolvimento do produto foi mantido pelos inventores originais. Um dos primeiros requisitos era estender o produto para uso com as plataformas de computação de médio e grande porte da Burroughs .

Depois que a Burroughs se fundiu com a Sperry Corporation para formar a Unisys , a linguagem foi estendida para ser usada também nas máquinas da série UNIVAC 1100/2200 da Sperry .

Posteriormente, um centro de desenvolvimento da Nova Zelândia foi criado em Christchurch por Gil Simpson para desenvolver o produto. Posteriormente, a propriedade foi transferida para a Unisys e o produto e os recursos do centro de computação do mainframe foram transferidos para o Unisys ACUS , o "Australian Centre for Unisys Software" em Sydney, Austrália .

A equipe de Gil Simpsons Christchurch criou a linguagem / banco de dados Jade que poderia importar e executar o código LINC em hardware comum.

O próprio LINC é (era) compatível com as seguintes plataformas:

  • ClearPath A-Series
  • ClearPath 2200
  • Unix SUN Solaris
  • Unix IBM RS6000
  • Unix HP9000
  • Sequent Unix
  • Unixware
  • Servidor Windows

O trabalho de desenvolvimento foi feito pela ACUS Unisys, mas foi transferido de ACUS para uma operação de terceirização indiana no início de 2008. Eventualmente, o produto foi vendido para mais 4000 clientes em todo o mundo.

Forças

  • Ele fornece uma interface intuitiva e fácil de entender para a programação Burroughs DMS e COBOL.
  • Por ter sido modernizado para suportar diferentes plataformas, facilita a migração entre plataformas e bancos de dados.
  • Ao confinar uma especificação em um banco de dados, todo o projeto pode ser mantido em um único ambiente de projeto e desenvolvimento.
  • Uma vez gerado, o código é absolutamente consistente com sua especificação de design.
    • Uma interface de cliente é sempre consistente com um sistema gerado ao mesmo tempo.
    • O código de acesso ao banco de dados do sistema é sempre consistente com as tabelas do banco de dados do sistema.

Fraquezas

Principalmente, LINC deixa de competir contra miríade prontas sistemas facilmente disponíveis a partir de muitas outras fontes (especialmente IBM ). O custo de compra e personalização de um produto existente (por exemplo, o sistema bancário de varejo Hogan) é percebido como menos caro / risco do que usar o LINC para criar, do zero, um sistema de negócios completo com todas as suas regras.

Outros pontos fracos surgem principalmente de sua dependência e base em Burroughs DMS e COBOL, que diferem muito de outras plataformas de computação.

  • Pessoas que estão entrando na indústria ou com experiência em Unix / Windows podem ter dificuldade para se ajustar a esse paradigma diferente.
  • A funcionalidade pode ser limitada pela necessidade de suportar várias plataformas. Você não pode usar estruturas ou consultas Oracle ideais se as plataformas de mainframe não as suportarem.

Referências

links externos

  • Information Exchange Group, provedor de utilitários para auxiliar no desenvolvimento com LINC, http://www.ieg-inc.com/