O BASIC clássico foi usado para o desenvolvimento comercial de software? Em caso afirmativo, como as limitações foram superadas?

46

Muitos de nós, inclusive eu, iniciamos a vida de programação com programas escritos em computadores domésticos , algo como

10 PRINT "ENTER RADIUS"
20 INPUT R
30 PRINT "CIRCUMFERENCE="; 2 * R * PI
40 PRINT "AGAIN?"
50 INPUT A$
60 IF A$="Y" THEN GOTO 10
70 END

Obviamente, o BASIC baseado em número de linha era propenso à criação de código spagetti, também porque a maioria dos dialetos do BASIC perdia declarações estruturais como WHILE, fazer tudo, menos o FORloop com IF, GOTOe GOSUB. Estou falando de dialetos do BASIC antes de 1991, quando o QBASIC e o Visual Basic apareceram.

Embora os dialetos do BASIC possam ter promovido o mau estilo entre os aspirantes a programadores, houve projetos comerciais maiores criados em um dialeto do BASIC? Se sim, como eles conseguiram conviver e contornar as deficiências óbvias?

Por "sério", quero dizer:

  • Não é um jogo (eu sei que alguns jogos comerciais foram escritos em BASIC, por exemplo, Pimania )
  • Não é freeware
  • Não é trivial, ou seja, razoavelmente grande (digamos: pelo menos 1500 LOC )
  • Vendido para vários clientes (não para desenvolvimento interno)
  • "Missão crítica" é uma vantagem
user281377
fonte
30
Were those BASIC dialects only used to teach aspiring programmes bad styleHum ... É um estilo ruim agora, mas não era naquela época.
Yannis 21/05
9
O Dartmough BASIC foi projetado em 1964 (e era uma linguagem compilada, curiosamente), uma era dominada pelo FORTRAN.
Yannis
8
Supondo que você esteja tentando calcular a circunferência de um círculo, o estilo não é a única coisa ruim que vejo aqui.
William Jackson
5
I'm seriously pissed off that this question was closed during the "History" contest.Você perdeu uma grande oportunidade de obter algumas visualizações extras para a pergunta, trazendo-a para o Meta.
Yannis
15
99% de todos os softwares escritos são aplicativos de linha de negócios escritos internamente e, por definição, os tornam o mais sério possível.

Respostas:

48

Certo. Antes do acontecimento do Altair / MITS / SWTPC / Kim / Sinclair / Pet / RadioScrap / OSI / Apple, havia uma pequena e deliciosa máquina conhecida como IBM 5100 . Tinha BASIC em ROM , uma grande unidade de fita cassete (ou duas), 8 KB de memória. uma tela de 24 linhas e uma impressora, por apenas US $ 10.000 - uma ordem de magnitude mais barata que o seu mini típico. Originalmente construído para cientistas (o APL na ROM também era uma opção), mas alguns tipos de contabilidade o descobriram e começaram uma mania: toda pequena empresa queria um. Com software personalizado, é claro. O 5110 seguiu isso, com as unidades de fita substituídas por disquetes de 8 ".

Algum software comercial? Galoons .

Você pode dizer contabilidade, folha de pagamento, contas a pagar, contas a receber, controle de estoque e faturamento? Eu estive lá, fiz isso - no BASIC. Contas de serviços públicos, estoque de carros novos e usados, coleta de caminhões de lixo e agendamento de entrega de bebidas? Sim - BÁSICO. Deseja rastrear minério de ferro de minas em trens para navios ... BASIC. Tudo o que não foi elevado provavelmente estava sendo feito no BASIC. Comercialmente, quero dizer. (Porque o RPG II não conta ;-).

Como se resolveu as limitações?

Bem, a primeira coisa que você fez foi enviar o cliente de volta à IBM para obter mais memória, porque quem poderia escrever algo sério em 8 KB? Você simplesmente tinha que ter 16. E duas unidades de fita, se possível, porque, à parte a teoria dos autômatos, a classificação por mesclagem em uma única fita é bem lenta.

Oh, desculpe - você quis dizer as limitações do BASIC.

Bem, você tinha que gerenciar seus recursos com muito cuidado - coisas como números de linha - porque não queria ficar sem esses; É uma verdadeira dor de cabeça ter que renumerar uma seção inteira e digitar tudo de volta, sem perder acidentalmente uma ou duas linhas de código.

Nah - só brincando. Na verdade, não tivemos esse problema até aparecerem computadores domésticos, com um intérprete BASIC que não podia renumerar sozinho.

Também usamos a modularidade - onde você chamava um novo programa, o executava até o encerramento e voltava ao programa de chamada. Um gosub com esteróides (porque você tem mais memória para usar), mas bem mais lento (porque demorou um tempo para a máquina encontrar o programa na fita e carregá-lo, depois retroceder e encontrar o programa original e carregar esse de volta...). Muito parecido com um fork e exec, mas sem o fork, apenas melhor porque todo o espaço de memória foi compartilhado.

O uso rigoroso de convenções também ajudou - você sabe, como "você sempre deve direcionar um GOSUB para uma linha de comentários que diga o que essa rotina faz, e você deve fazer o mesmo para um GOTO sempre que possível. Coisas assim. Ah, e estruturar programação , um pouco mais tarde - "por convenção" novamente.

Alguns até foram um pouco ao extremo: OAOO , YAGNI , TSTTCPW , emparelhamento, refatorar sem piedade, esse tipo de coisa. Não por esses nomes, é claro. (Veja também: Eclesiastes ;-)

Os dias de glória.

Jim Sawyer
fonte
4
De todas as boas respostas, escolhi essa porque ainda não tem muito amor (upvotes) e também porque destaca o uso do BASIC para software comercial em microcomputadores antes do surgimento dos computadores domésticos.
User281377
1
Up voto para o seu grande resposta e a referência a um dos melhores livros da Bíblia :)
Rocklan
46

O primeiro software em que trabalhei foi um programa GW-BASIC de 8k linhas que a empresa escreveu nos anos 80 para usar o cálculo de transferência de calor para dimensionar e precificar equipamentos de caldeiras. Embora o código fosse completamente incompreensível, ele conseguiu funcionar tão bem que eles o usavam há mais de 20 anos.

Essa era a força do BASIC que um engenheiro mecânico com um manual de referência poderia realmente escrever software utilizável de qualidade (na época). Antes do BASIC e da prevalência do PC, tal coisa seria inédita. Você precisaria contratar uma equipe de engenheiros de computação e possivelmente operadores de computadores para programar e trabalhar em um mainframe compartilhado. Tudo isso teria sido muito complexo para o típico engenheiro mecânico perceber em um curto espaço de tempo.

Portanto, certamente o BASIC foi muito útil para além dos entusiastas do computador doméstico; essa foi a primeira introdução de muitas empresas no campo de criação de software personalizado internamente por um preço acessível, sem equipes de especialistas.

maple_shaft
fonte
Absolutamente isso. - ^^^
Robert Harvey
30

Sim, havia vários produtos comerciais e outros desenvolvimentos "sérios" realizados no BASIC. Para entender o porquê, você precisa entender o contexto das décadas de 1970 e 1980, quando o BASIC cresceu em mini- e microcomputadores.

Naquela época, as máquinas eram positivamente magras pelos padrões de hoje. As CPUs tinham clock de alguns MHz (geralmente muito menos para microcomputadores) e tinham menos memória do que seria ocupada pelo HTML necessário para renderizar esta página. Para implantar um produto, era necessário usar as ferramentas disponíveis, que eram montagem nua ou, em microcomputadores, o intérprete BASIC enviado na ROM (geralmente 16K em um espaço de endereço de 64K) com o sistema . Havia outros idiomas disponíveis, mas muitos não tinham todos os recursos estruturados que tomamos como garantidos. Isso tinha muito a ver com o fato de a memória ser escassa *, nenhuma era virtual, exceto em sistemas de ponta e geralmente não havia o suficiente para armazenar um compilador para uma linguagem mais sofisticada. Com recursos tão limitados, "sério"

Seu argumento de que os fabricantes de computadores domésticos antigos deveriam conhecer melhor e fornecer uma linguagem estruturada simplesmente não funciona nesse contexto. Simplesmente não iria acontecer com a tecnologia disponível a um preço que as pessoas poderiam suportar.

Como contornamos as deficiências do idioma era simples: não as viamos dessa maneira e concluímos o trabalho com o que estava disponível. O ANSI Minimal BASIC está estruturado de maneira semelhante à linguagem assembly, na medida em que você obtém os mesmos tipos de chamadas simples de ramificação e sub-rotina, mas cabe a você garantir que as estrelas estejam alinhadas corretamente. A única exceção é a FOR..NEXTconstrução usada para fornecer loop. Basicamente, se você queria desenvolver algo no BASIC e fazer um bom trabalho, teve que planejar e entender a estrutura de seus programas com o mesmo cuidado que se estivesse escrevendo em montagem. As ferramentas de depuração disponíveis eram muito primitivas, portanto, em essência, você precisava agir em conjunto se quisesse que seus programas funcionassem e fossem mantidos.

Sim, havia muito espaguete na época, mas ainda tenho que ver um idioma em que é impossível escrever código incorreto.


* A memória ficou em torno de US $ 750-1.000 por MB no início dos anos 80. Ajustado pela inflação, são US $ 1.600-2.200 em dólares de 2010. Nesse mesmo ano, o custo por megabyte foi de cerca de US $ 0,03.

Blrfl
fonte
Lembro-me de pagar cerca de US $ 1000 por uma placa de memória EMS de 2 Megabytes nos anos 80. O computador em que entrou, um kit clone para PC baseado em NEC V20, custou cerca de US $ 2500.
Jfrankcarr
LOL, lembro que tivemos que assinar um pedido de compra pelo presidente da empresa para comprar um cartão de memória de 64 MB para um VAX no final dos anos 80. Para ser justo, era memória dual-portado ECC, mas custou um lugar no lado mais distante de US $ 30K ...
TMN
Havia aplicativos de negócios escritos em BASIC, alguns dos quais vendidos por dinheiro, e um aplicativo de negócios de venda quente escrito em BASIC, para APPLE] [ou CommodorePET, Atari, IBM ou IBM, ou microcomputadores do início dos anos 80, poderia vender de 100 a 500 cópias, a preços unitários de cerca de US $ 100. Não havia nada como o produto de software moderno naquela época, porque os computadores naquela época eram pequenos e o software era pequeno. Nem básico, nem C, nem assembler nem qualquer outra linguagem moderna teriam mudado isso.
Warren P
Nos anos 80, o mainframe do computador de nossas faculdades locais recebeu uma atualização de 10mb para 50 mb. Concedido que os 10mb estavam apenas meio cheios, mas eles queriam ter espaço suficiente para o futuro previsível ... Imagine que um disco rígido com apenas 50 mb para cerca de 50-100 usuários ... esteja acabando.
SoylentGray
22

Meu primeiro trabalho de programação 100%, na década de 1980, estava trabalhando em um pacote de contabilidade de mercado vertical originalmente escrito em GW-BASIC . Ele foi portado para o QuickBASIC 3.0, mas manteve quase todas as falhas associadas aos primeiros dialetos do BASIC. Havia toneladas de GOTOs e muita estrutura ruim. Havia cerca de uma dúzia de módulos (estoque, contabilidade, etc.) e o programa foi vendido por cerca de US $ 1000 a US $ 2500 por módulo, mais contratos de suporte anual. A receita da empresa ficou na faixa de US $ 15 a US $ 25 milhões por ano.

Quanto a como viver com deficiências, muitas limitações foram contornadas usando linguagem de máquina ou MASM . Era comum usar comandos PEEK e POKE para inserir linguagem de máquina nos programas BASIC. Escrevi programas MASM (e mais tarde C) para estender o programa e adicionar coisas como suporte rudimentar a bancos de dados, comunicações e "gráficos" de texto.

Peter Mortensen
fonte
12
Tenho pena de você, a menos que, é claro, você tenha participado dos 15 mil.
Spencer Rathbun
@ SpencerRathbun - Infelizmente, recebi um salário bastante baixo, aproximadamente igual a cerca de US $ 35 mil hoje.
Jfrankcarr
Sim, meu primeiro trabalho de programação foi no Quickbasic 3. Não era uma porta, mas não era muito melhor. A parte principal foi feita por alguém cujo "treinamento" estava lendo o livro que acompanha o compilador. Missão crítica para os clientes, preço elevado de 4 dígitos.
Loren Pechtel
5

Os grandes projetos comerciais foram criados em um dialeto do BASIC?

Em computadores domésticos mais antigos, como o C64 ou seus antecessores, existiam muitos programas BASIC e também alguns comerciais. Mas "grande" raramente era possível, pois com <64kB de RAM, gravar programas BASIC "grandes" não é realmente fácil. Se você quisesse resolver as limitações da máquina, normalmente precisava sair do BASIC, a "linguagem de alto nível" e usar o assembler.

Portanto, a resposta para sua pergunta é "provavelmente não muitas", mas não pelos motivos que você tem em mente (como "muito propenso a erros / não estruturado" etc.).

A propósito: AFAIK, o famoso compilador PETSpeed ​​BASIC foi escrito em BASIC (compilado consigo mesmo, é claro).

Doc Brown
fonte
4
Eu gostaria de salientar que importante! = Grande, especialmente naqueles dias. Hoje, os programas comerciais tendem a ter todos os recursos imagináveis ​​incorporados, mas esse nem sempre foi o caso.
Jeanne Pindar
@DocBrown Havia maneiras de contornar o limite de 64k de memória e aplicativos grandes. Muitos aplicativos grandes existiam mais como suítes de aplicativos com muitos módulos.
maple_shaft
Lembro-me de vários jogos C64 comerciais escritos total ou parcialmente em BASIC. 'Rox 64' é um deles.
21712 Alan B
"Telengard" Eu acho que foi chamado, um jogo de RPG para o C64, era como 8k linhas de Basic. Foi divertido mexer na fonte para fazer de você um personagem super.
Neil N
@maple_shaft: "Muitos?" Especialmente "Muitas aplicações BASIC?" Fiquei com a impressão de que havia apenas alguns.
Doc Brown
5

Toda a linha de contabilidade da Peachtree Software (contas a receber, pagar, etc.) foi toda escrita (e ainda pode ser, pelo que sei) no BASIC. Quando o IBM PC foi lançado, passei muitas noites longas depurando e corrigindo seu código para clientes que compraram um IBM Personal Computer e os pacotes Peachtree para fazer os livros para suas pequenas empresas.

jerhewet
fonte
5

Meu primeiro trabalho foi em 1981, programando o Apple IIs em Basic no escritório da Price Waterhouse (Pre Coopers) em sua consultoria de gestão em Belfast, Irlanda do Norte. Uma equipe de dois / três de nós desenvolveu e instalou sistemas em clientes, incluindo uma livraria e um matadouro. Era um sistema de modelagem financeira, efetivamente uma planilha Visicalc muito complexa (50 folhas, 3.000 variáveis) transformada em um grande programa básico. Foram necessários dois dias em um sistema Apple II com 4 unidades de disco para processar o rendimento de uma semana no matadouro. Um pouco mais rápido que o sistema manual deles, que levara duas semanas para cada semana.

Em seguida, passamos para as máquinas Act Sirius, programando novamente no Basic (o Microsoft 8KB Basic) que foram instalados nos clientes.

O Basic tinha números de linha, mas havia um kit de ferramentas que poderia renumerar programas. Quando saí da Uni, onde havia aprendido Pascal, tentei escrever no estilo estruturado possível (o máximo que puder no Basic), mas é claro que Gotos e Gosubs foram usados.

Mais tarde eu programei em 1983 no Dec Rainbow, que usava o CBasic, um básico compilado desajeitado.

David Bolton
fonte
4

Havia muitos softwares comerciais escritos usando o BASIC-PLUS nos sistemas PDP-11 . Lembro-me de ver análises estatísticas e pacotes de contabilidade, além de uma boa quantidade de material de automação de laboratório de alta qualidade (não tenho certeza de quão "comerciais" eram. Eles costumavam ser incluídos como parte de um pacote de instrumentos, então não sei se eles foram vendidos separadamente.). O ISTR BASIC também foi um dos idiomas principais para o desenvolvimento de aplicativos HP 2000 e foi o idioma principal (possivelmente apenas) suportado pelas primeiras estações de trabalho da série HP 9800 .

Peter Mortensen
fonte
O HP2000 deu suporte ao desenvolvimento em mais alguma coisa? Minha impressão foi que o HP2000 foi codificado para executar apenas programas fornecidos pelo usuário no HP Timeshare BASIC [alguns ou todos os códigos de gerenciamento de arquivos e gerenciamento de arquivos do sistema poderiam ter sido escritos usando outros idiomas ou código de máquina].
Supercat
3

Os primeiros produtos de banco de dados DOS da Alpha Software (por volta de 1985) "Database Manager I", "Database Manager II" (DMB2) e "Alpha Three" foram escritos em BASIC e compilados com o compilador IBM BASIC. Eu trabalhei no "Alpha Three". Toda a interface do usuário estava no BASIC, mas tinha um componente principal de TSR (encerrar e permanecer residente) escrito em C e ASM com o qual o BASIC se comunicava por meio de interrupções. Os números e as quebras de linha ocupavam um espaço valioso no segmento, de modo que o código era terrivelmente esmagado e ilegível. Usamos variáveis ​​compartilhadas e trocamos módulos constantemente. Foi difícil fazer o trabalho. No entanto, ainda tentamos ser lógicos em relação à organização, de modo que nossa biblioteca de strings estava no baixo número de linhas de 60000. Uma operação comum como aparar uma string seria semelhante a:

$ S = $ INS; GOSUB 60210; $ INS = $ S;

Nós convertemos para todos os C logo após o lançamento de "Alpha Three".

Pete Lyons
fonte
1
Como todas as variáveis ​​eram globais e você também teve que abusar delas para a passagem de parâmetros, como você gerenciava seu código para evitar a substituição acidental de uma variável já usada?
User281377
Foi baseado em convenções.
Pete Lyons
3

No início dos anos 80, a Força Aérea dos EUA comprou um monte de computadores de ônibus Cromemco S100 para serem utilizados pelos esquadrões voadores como uma ferramenta de planejamento de voo.

O software de planejamento de vôo foi desenvolvido usando o BASIC por pilotos e navegadores da Força Aérea no Tactical Air Warfare Center, localizado na Base Aérea de Eglin, na Flórida .

No que se refere às "deficiências óbvias" do BASIC, realmente não sabíamos melhor. Apenas dar acesso físico a um computador a uma tripulação parecia um salto incrível de tecnologia na época.

Jim No Texas
fonte
2

Eu acredito que o Ultima original na Apple] [foi escrito em Applesoft Basic.

O DEC usou sua versão do BASIC para grande parte do RSTS e outros sistemas operacionais desenvolvidos.

Scott Weisman
fonte
Havia uma piada de que o RSTS / E foi escrito em BASIC, mas na verdade não era. Muitos programas utilitários sysadmin fornecidos com o SO foram escritos em BASIC.
Don Roby
2

O único medo que tive, como programador do QuickBasic, há 20 anos, era a mensagem "Memória insuficiente". Mas isso só me fez um programador melhor! Eu aprendi a escrever código compacto e sério.

Eu costumava usar o QuickBasic para programação industrial. No mundo real (fábricas), você não pode dizer ao seu chefe "vai demorar meio ano para ser escrito em C"; você só pode dizer: "sim chefe, estará pronto na próxima semana". Sim, o BASIC era a solução prática e rápida no mundo real. Não C ou Pascal.

Um dos programas que escrevi no QuickBasic 4.5, um banco de dados exclusivo, foi vendido para poucas empresas e, na verdade, substituiu o banco de dados comercial que eles já possuíam (o que provavelmente foi escrito em C ou Pascal). Este banco de dados está em uso até hoje.

Um assunto que quero mencionar:

todos pensamos que novos métodos de programação são muito úteis . Porém, na vida real (indústria), a maioria das máquinas atualmente é operada pelo PLC moderno. Os programas geralmente são escritos em programação ladder, que é milhões de vezes mais primitiva que o GW-BASIC. Como programador de CLPs, posso dizer claramente: eu adoraria substituir essa programação primitiva de ladder por uma linguagem de alto nível como GW-BASIC ou mesmo QuickBasic. (MEGA-BASIC é um dialeto usado para esse fim no passado).

Afinal, o que a maioria das máquinas está fazendo? interpretar entradas e definir saídas. Você não precisa de C / Assembly para isso e não precisa de Java. Você precisa do QuickBASIC para criar um código de manutenção.

Shian
fonte
1

Absolutamente sim.

Há muito tempo, trabalhei para uma empresa que vendia muitos milhões de dólares em sistemas, principalmente para a indústria de revendedores de automóveis. Esses sistemas executavam o software BASIC em derivados de minicomputadores HP 21MX de 16 bits personalizados (antes da era dos microprocessadores de 16 bits bem-sucedidos). Era uma empresa de tamanho médio com dezenas de programadores básicos. Eles usaram um dialeto BASIC antiquado que exigia números de linha e permitia apenas 286 nomes de variáveis ​​possíveis, e, no entanto, as soluções forneciam toda a contabilidade e inventário de negócios (etc.) para empresas de médio porte. O grupo de pesquisa e desenvolvimento também escreveu montadores, compiladores e até emuladores de hardware no Basic para ajudar a iniciar o desenvolvimento de seu hardware de próxima geração.

Ao tentar explicar o que eu pensava serem os benefícios de metodologias mais modernas de programação e design de hardware para um cronômetro antigo, ele me disse que bons designers particionavam, modulavam e estruturavam adequadamente as soluções para seus problemas, mesmo que a expressão direta deles não fosse construída. na linguagem ou nas ferramentas, enquanto, observou ele, os maus designers podem produzir lixo indiscutível, independentemente do paradigma de desenvolvimento da moda "sofisticado" em que trabalham.

hotpaw2
fonte
1

O fato é que a maioria dos novos revendedores de carros nos EUA hoje em dia usa os programas BASIC para citar suas opções de financiamento e criar as longas declarações de liquidação que você recebe quando compra um carro. Os programas são escritos em versões arcaicas de minicomputadores do BASIC, executadas sob emulação no hardware moderno. Existem UIs da Web enxertadas, mas é o BASIC falando com um tty por baixo.

Por volta de 1980, o seguro de vida universal tornou-se uma moda instantânea nos negócios de seguros de vida. Toda empresa queria vendê-lo imediatamente, e exigia que os valores das contas fossem calculados para cada política todos os meses, usando uma combinação muito complicada de juros e muco-jumbo atuarial. Como os grandes projetos nos departamentos de processamento de dados demoravam cerca de um ano na época, muitas empresas entraram em produção com o número de maçãs, PCs e / ou Tandy TRS-80 necessários para fazer a versão mais complicada do que estivera nos mainframes por aproximadamente 20 anos. Praticamente tudo isso foi programado no BASIC. O BASIC usava principalmente o ponto flutuante de precisão curta, de modo que milhões de centavos dos clientes se perdiam no arredondamento.

O JPL também possuía uma versão do BASIC usada há cerca de 35 anos. Foi chamado MBASIC, com o M representando a gerência, mas foi usado, entre outras coisas, para programar naves espaciais.

Lucas Membrane
fonte
1

O imensamente popular sistema de ponto de venda de varejo 4680/4690 da IBM foi escrito em um dialeto chamado IBM 4680 BASIC . Trabalhei nesse sistema de 1998 a 2002 para um grande varejista do Reino Unido.

Esse sistema era muito popular, de acordo com o artigo da wiki que ainda detinha 12% de participação de mercado em 2005. O sistema ainda está forte hoje, as chances são boas de que a maioria das pessoas no mundo ocidental tenha usado indiretamente esse sistema alimentado por BASIC nos últimos semana.

Qwerky
fonte
0

Procure no PICK ou em qualquer outro banco de dados MultiValue. Todos eles contam com o DataBasic como idioma principal ou único e têm um uso vertical significativo do mercado. Ainda executamos um sistema que escrevi para o benchmarking de compras há mais de 20 anos. Executa cerca de 50 mil linhas de código.

Kevin Thorpe
fonte
0

Havia uma empresa chamada Softek na Índia nos anos 80 que criou suas próprias versões do Wordstar, dBase e Lotus 1-2-3. Outro de seus produtos foi um compilador BASIC.

Usando seu próprio CBASIC, eles criaram um pacote contábil de entrada dupla muito abrangente chamado SIMS-FA (Softek Financial Accounting).

Tinkoo Sharma
fonte
0

Qualquer? Sim. Muitos? Não. Software educacional e manutenção de registros.

A era BÁSICA: ~ 1970-1990

Até cerca de 1990, as limitações excederam as expectativas e evoluíram com as necessidades do setor. Na maioria das vezes, as necessidades das grandes empresas foram analisadas por consultores e atendidas com qualquer idioma que atendesse às necessidades.

Como hoje, em que as empresas têm uma idéia mais ou menos desenvolvida do que precisam e têm algum tipo de solução criada com o VBA, aprendem o suficiente para descobrir soluções cliente-servidor mais competentes, aplicativos da web e interfaces otimizadas com a limpeza de dados .

Na década de 1970, se uma empresa comum pudesse equilibrar contas ou registrar números de produção no computador sem o orçamento de uma corporação, seria um grande passo para manter livros, e se você pudesse obter um diagrama, isso seria fantástico.

Nos anos 80, se você pudesse migrar alguns desenhos de produtos para o computador para torná-los editáveis, isso também seria fantástico.

Ambos podem ser feitos com uma linguagem baseada em intérpretes. Como os computadores podiam armazenar mais dados, a complexidade exigia compiladores, porque as CPUs ficaram atrás da lei de Moore no desempenho de embaralhamento de dados brutos, de 1977 a 1987.

Mas até o final da década de 1980, quando as expectativas exigiam mais, os idiomas estabelecidos na década de 1970 (complementados em casos raros pelo Assembler e / ou hardware personalizado como placas FPU) fizeram todo o trabalho comercial sério em empresas com poucas exceções. Cobol e Fortran ainda eram os ingressos nos mainframes. Somente as empresas podiam pagar por isso, e as empresas sérias faziam o trabalho sério que podiam com os programas BASIC internos, e por um tempo isso era suficiente.

Pacotes de software autônomos para uso geral, como processadores de texto ou plotadoras de diagrama, surgiram por volta dessa época, quando os sistemas operacionais amadureceram em computadores acessíveis como alvos para compiladores, e surgiu o armazenamento que poderia conter documentos e dados "do tamanho da empresa".

Pascal foi um dos principais candidatos aqui. Anteriormente, quase tudo isso havia sido escrito no Assembler. Finalmente, C veio do Unix e começou a ser usado em PCs.

Henrik Erlandsson
fonte
0

Na época do Commmodore 64, a parte Gunship foi escrita em BASIC. Você pode até editar o código, para que seu helicoper seja equipado sempre que aterrissar.

Holli
fonte
Sei que alguns jogos (comerciais) foram completamente escritos no Basic, mas excluí os jogos por um motivo: os jogos são o que você faz, desde que sejam engraçados. É mais fácil conviver com as limitações quando o "conjunto de recursos" depende completamente do designer e a manutenção não é um problema.
User281377
0

O BBC BASIC originou-se no BBC Micro , lançado no Reino Unido em 1981. Quando chegou à versão cinco, implementada nos computadores RISC OS baseados em ARM da Acorn, era considerado o BASIC mais rapidamente interpretado no mundo. Sua sintaxe foi avançada na época, incluindo palavras-chave estruturais como CASE e WHILE e funções e procedimentos. (Inclusive incluiu um assembler, originalmente para 6502 e, em seguida, para ARM nas versões do sistema operacional RISC .)

Muitos aplicativos comerciais de desktop foram escritos usando-o, talvez em grande parte porque fornecia acesso conveniente às chamadas SWI que o sistema WIMP cooperativo usava. Foi rápido o suficiente para que houvesse até mesmo alguns jogos de arcade escritos usando-o - Nevryon , um clone do tipo R, é um dos que me lembro particularmente de procurar na fonte.

Peter Mortensen
fonte
Na verdade, eu tinha um Acorn Electron (versão menor da BBC) e um Acorn Archimedes (e também um Cambridge Z88 que usava o mesmo BASIC); e sim, o BASIC nesses computadores era um pouco melhor do que na maioria dos outros computadores domésticos. Mas como o BASIC também incluiu a possibilidade de usar o Assembler embutido, pode ser difícil distinguir programas BASIC puros de programas mistos, se você apenas der uma olhada no código-fonte.
User281377
Ah, uma rápida olhada é realmente o suficiente para distinguir entre os dois. Muito diferente. E apesar de incluir um assembler, não era comum distribuir código-fonte da linguagem assembly. Normalmente, o código binário montado seria incluído.
Dan Ellis
0

As antigas linguagens de script do banco de dados xBase (como no dBase II , dBase III + , Clipper etc.) estavam intimamente relacionadas aos vários BASICs não padrão da época.

Não é exatamente o BASIC usado para trabalhos comerciais, mas talvez perto o suficiente.

Peter Mortensen
fonte
Steve314: esses idiomas do xBase estavam muito à frente do BASIC do computador doméstico. Escrevi muito código no Clipper e lembro de funções, variáveis ​​locais, instruções de loop e muitas outras coisas que estão faltando no computador doméstico BASIC dos anos 80. Yannis: QuickBasic apareceu em 1985.
user281377
@ user281377 - A BBC Basic em 1981 foi estruturada e tinha procedimentos, embora ainda precisasse de números de linha. O padrão ANSI básico (1984) incluía estruturas de blocos sub(uma função / procedimento com parâmetros e variáveis ​​locais) e muito mais, e tornava os números de linha opcionais. O Borland Turbo Basic em 1985 possuía a maioria dos recursos básicos padrão IIRC. Usei bastante o GFA Basic no Atari ST - também estruturado, processual, sem números de linha. Havia muitos procedimentos básicos estruturados e processuais nos anos 80.
23312 Steve314
@ user281377 - O xBase tinha vantagens óbvias em termos de manipulação de banco de dados e formulários de entrada de dados, fazendo coisas que o Basic não sabia, mas você poderia facilmente salientar que o STOS tinha vantagens óbvias na exibição de sprites e na leitura de joysticks.
23312 Steve314
@ Steve314: Eu sei que havia dialetos BASIC com boas características, mas estou perguntando especificamente sobre os outros BASICs. Aqueles onde GOTO e GOSUB eram tudo o que você tinha. Onde todas as variáveis ​​eram globais e uma matriz unidimensional era a estrutura de dados que você poderia obter. Clipper era um dialeto xBASE realmente avançado; Sinceramente, não me lembro quantos recursos avançados do Clipper estavam disponíveis no dBASE III, mas pelo menos tinha loops apropriados de do-while.
User281377
1
@ user281377 A versão original da resposta estava mencionando Visual Basic (de onde você tirou QuickBasic de?), que foi o que eu estava gritando sobre; P
yannis
-2

A maioria dos micros tinha apenas ferramentas básicas de desenvolvimento (ROM) ou montadoras. Para programas não críticos à velocidade, o BASIC foi usado para muitas aplicações comerciais, bem como para a maioria dos projetos internos da empresa. Mesmo quando o CP / M apareceu, os únicos aprimoramentos reais foram a capacidade de lidar com projetos maiores e usar o compilador básico da Microsoft (BASCOM). Minha própria experiência com o microdesenvolvimento inicial foi a seguinte:

~ 1980 - Microsoft ROM básico em um Nascom 2 com um pequeno montador. O desenvolvimento de aplicativos comerciais incluiu um programa de devolução de IVA (imposto sobre vendas) e um programa de controle de processo (ambos no BASIC).

198? - Ainda usando BASIC, mas agora eu também tinha Pascal (BLS - precursor de Borland Pascal ).

Meados dos anos 80 - Os PCs começaram a dominar e os primeiros compiladores C apareceram ( Hisoft e Mix). O BASIC entra em declínio (revivido mais tarde na forma de zumbi, é claro pelo MS com Visual Basic ). O GW-BASIC era muito popular como uma ferramenta de desenvolvimento interna. Inúmeros pacotes comerciais (contabilidade, controle de estoque, etc.) ainda estavam escritos em BASIC.

Final dos anos 80 - C se torna a principal linguagem de desenvolvimento (após o lançamento do MSC 5 em 1986?). Microsoft e Borland dominam nos próximos anos ...

user11465
fonte
1
como isso responde a pergunta?
Gnat
responde à pergunta dizendo 'sim, o básico foi amplamente utilizado para o desenvolvimento comercial nos últimos anos 70 e início dos anos 80'. Com relação à superação de deficiências óbvias, lembre-se de que os programadores não perceberam essas deficiências na época. O Basic é Turing completo para que programadores inteligentes pudessem fazer o que precisassem (as principais limitações eram, obviamente, velocidade, memória, armazenamento, etc., mas essas limitações se aplicavam a todo o desenvolvimento da época). Não sei por que tantos votos negativos estavam apenas tentando responder à pergunta.
esses dois programas mencionados, foram vendidos a vários clientes (não um desenvolvimento interno) ? você pode compartilhar referências onde você pode aprender mais sobre elas?
Gnat
Infelizmente, muitas aplicações (incluindo as que eu também me referi) foram perdidas nas brumas do tempo (nenhuma interweb ou mesmo BBSs para distribuir na época). Perdi as fitas porque foram interrompidas, mas elas foram: 1) Não são jogos, 2) não são livres, 3) não são triviais e 4) são de missão crítica. Não posso dizer que eles foram vendidos para muitos clientes, o aplicativo convencional era para um cliente específico, o aplicativo de IVA foi revendido várias vezes. Ainda irritado com os votos negativos (apanhadores de nit ou shoud, eu digo apanhadores de mosquitos :-)).