Tome este cenário:
Um programador cria uma linguagem para resolver algum problema.
Ele então libera esse idioma para ajudar outras pessoas a resolver problemas como esse.
Outro programador descobre que é realmente muito melhor para alguma categoria diferente de problemas.
Em virtude desse novo aplicativo, o idioma se torna popular para esse aplicativo principalmente.
Há alguma ocorrência disso realmente acontecendo?
Em outras palavras, o objetivo pretendido de uma linguagem tem alguma influência sobre como ela é realmente usada ou se ela se torna popular? É mesmo importante que um idioma tenha um propósito anunciado?
programming-languages
history
Jon Purdy
fonte
fonte
Respostas:
Lisp . McCarthy originalmente especificou Lisp em um artigo para mostrar que poucas notações simples são suficientes para construir uma linguagem completa de aprendizado. Ele ficou surpreso ao descobrir que o Lisp poderia ser implementado em código de máquina (Steve Russel fez a primeira implementação do interpretador do Lisp). Lisp é amplamente utilizado para programação de IA.
fonte
O Java foi originalmente destinado à programação de sistemas embarcados. Da Wikipedia "Java foi originalmente projetado para televisão interativa" . Mas tornou-se extremamente popular para aplicativos e programação da Web.
fonte
Lua foi projetado principalmente como linguagem de configuração e acabou encontrando um nicho como a linguagem de script mais popular para jogos (por ser pequena, rápida, poderosa, portátil, facilmente estendida e incorporada, com sintaxe amigável). O jogo mais popular para usá-lo, o World of Warcraft, nem o usa realmente para configuração, usando XML.
fonte
A intenção original de Larry Wall para o perl era uma " linguagem de script Unix de propósito geral para facilitar o processamento de relatórios " e a página de manual descreve o idioma como:
E é claro que a página de manual também nos diz que Perl significa Linguagem de Extração e Relatório Prático (o nome real é um erro de ortografia do nome original Pearl , alterado quando Wall descobriu uma linguagem PEARL já existente ).
Perl percorreu um longo caminho desde então, pois é a linguagem da qual os deuses criaram o universo .
fonte
Eu acho que o JavaScript também se encaixa nessa questão, porque eu não acho que Brendan Eich, na época do Netscape, jamais imaginou que versões futuras de seu LiveScript seriam usadas para criar os chamados "aplicativos" da web de hoje.
O JavaScript passou de validações simples de formulários e rollovers de imagens para uma ferramenta poderosa capaz de rivalizar com aplicativos offline, tanto em termos de funcionalidade quanto de beleza.
Infelizmente, porém, acho que muitos ainda consideram isso um brinquedo.
fonte
Erlang. Foi inventado há muito tempo nos laboratórios da Ericsson para desenvolver aplicativos de telefonia, provavelmente para suas linhas de comutação e acesso a dispositivos. Agora, ele evoluiu para uma linguagem dinâmica de propósito geral promissora, com um conceito interessante de simultaneidade.
Seria interessante se, no futuro, houvesse mais idiomas do mundo das telecomunicações passando suas linhas para o mundo da TI e evoluindo a partir daí, especialmente os idiomas projetados inicialmente para modelagem e verificação de protocolos.
fonte
Pascal. Criado para ensinar programação.
fonte
O PHP originalmente significava Página Pessoal Pessoal , mas hoje também é usado para alguns aplicativos da Web um pouco maiores.
fonte
<?php
tag no início do arquivo!Tenho certeza de que o VBScript não foi projetado para escrever malware, mesmo que esse seja um uso extremamente comum.
fonte
Inicialmente projetado como um método de tornar o código mais genérico, a Meta Programming em C ++ foi considerada completa e até hoje é usada para melhorar bastante a linguagem C ++ por meio de bibliotecas como boost.
fonte
BASIC é outro caso famoso. Seu nome ( código de instrução simbólico para todos os fins) para iniciantes indica sua origem como idioma do aluno, mas cresceu bastante desde então.
fonte
VHDL e Verilog (também conhecido como VerilogHDL) foram originalmente projetados para descrever circuitos e componentes digitais. Eles foram usados como uma forma de documentação e para simular o comportamento dos componentes. Mais tarde, Synopsys e outros desenvolveram tecnologia que poderia traduzir (um subconjunto) dessas descrições em uma lista líquida de portas, que por sua vez pode ser usada para produzir hardware real.
VHDL e Verilog são chamados de HDLs (linguagens de descrição de hardware) por motivos históricos. Hoje eles são realmente usados como linguagens de design de hardware (a mesma sigla).
fonte
O ML começou como uma linguagem para desenvolver e criar scripts para um provador de teoremas. Era a "meta linguagem" do provador de teoremas.
fonte
C
Originalmente, ele foi desenvolvido originalmente para uso com o sistema operacional Unix. Mas o idioma se tornou tão popular que até Dennis Ritchie ficou surpreso.
Em seu famoso livro A linguagem de programação C . Ritchie afirma que "se espalhou muito além de suas origens como o idioma do sistema operacional UNIX". e como ele ficou surpreso ao se tornar uma linguagem popular para o desenvolvimento de aplicativos.
fonte
O C ++ foi originalmente projetado como "C com classes" para facilitar a programação orientada a objetos no C ++.
Os modelos foram fornecidos em uma versão posterior para permitir a implementação de classes de contêineres fortemente tipados. Mais tarde, foi notado que esses modelos realmente constituem uma linguagem de programação em tempo de compilação completa de Turing.
Como conseqüência, muitos aplicativos agora usam C ++ não como uma linguagem de programação orientada a objetos, mas como uma linguagem de programação orientada a algoritmos que depende muito do polimorfismo e metaprogramação em tempo de compilação.
fonte
const
são os dois motivos mais importantes que eu uso C ++.ADA - originalmente projetado sob contrato do DoD para aviônicos. Embora ainda seja usado nesse aplicativo, também é popular, por exemplo, para produtos intermediários de negócios em tempo real.
fonte
"o objetivo pretendido de uma linguagem tem alguma influência sobre como ela é realmente usada ou se ela se torna popular?"
Não acho que o objetivo pretendido de uma linguagem tenha muita influência em seu uso e popularidade: existem algumas ótimas linguagens que foram projetadas desde o início para serem inovadoras, flexíveis e versáteis, mas nunca se tornaram tão amplamente usadas ou populares, exceto em mercados verticais muito especializados - por exemplo, Eiffel. OTOH, Basic, Pascal, C etc etc dominaram a paisagem por anos, embora tenham sido projetados originalmente para fins específicos e limitados.
As considerações de marketing / suporte e financeiro da OMI sempre desempenharam um papel importante na disseminação e extensão de determinados idiomas. Por exemplo: Borland cria TurboPascal e pacotes, comercializa e suporta. A Microsoft cria C # e pacotes, comercializa e suporta. Como resultado, esses idiomas se tornaram populares, surgiram indústrias de ferramentas de terceiros e mais e mais desenvolvedores e empresas saltam no caminho.
Mas, nos últimos anos, as ferramentas e linguagens de código aberto estão mudando a dinâmica e as linguagens agora se tornam populares com base mais em "mérito" do que em marketing - por exemplo, Ruby, Python e Perl. Mas isso não se deve tanto à "intenção" dos inventores quanto ao potencial incorporado da linguagem para extensão e uso conveniente.
fonte
Eu não acho que exista uma linguagem popular que não tenha sido redirecionada de sua intenção original. Até o C foi originalmente escrito para criar um sistema operacional portátil (unix).
Qualquer tentativa de escrever uma linguagem de programação verdadeiramente genérica sem um objetivo específico em mente provavelmente falharia miseravelmente devido à falta de restrição e foco.
fonte
Ouvi dizer que Ruby foi projetado como uma linguagem para escrever poesia, mas você também pode escrever um código muito bonito!
fonte