Por que existem tantas linguagens de programação? Por que novas linguagens ainda estão sendo feitas? [fechadas]

48

Por que existem tantas linguagens de programação?

E o que leva alguém a criar uma linguagem de programação, apesar de já existirem outras linguagens?

    
por Moshe 27.09.2010 / 14:15
fonte

15 respostas

34

Linguagens de programação evoluem

Novas linguagens de programação geralmente aprendem com os idiomas existentes e adicionam, removem e combinam recursos de uma nova maneira. Existem alguns paradigmas diferentes, como orientado a objetos e funcional , e muitas linguagens modernas tentam misturar recursos de ambas.

Há também novos problemas que precisam ser resolvidos, por exemplo, o aumento de CPUs multi-core. A solução mais comum para isso tem sido threads, mas algumas linguagens de programação tentam resolver o problema de simultaneidade de uma maneira diferente, por ex. o modelo de ator. Veja Erlang - Software para um mundo concorrente

    
por 27.09.2010 / 14:19
fonte
20

É um ciclo. Você começa um novo idioma, e você é livre para fugir de toda a sintaxe ruim e escolhas ruins de seus predecessores. Na versão 1, o idioma parece ótimo, porque não tem essa bagagem e faz o trabalho. Então, em versões mais recentes, você começa a experimentar recursos que podem não funcionar ou traz recursos de outros idiomas mais recentes que fazem com que sua sintaxe fique um pouco confusa. E eis que, depois de mais algumas versões, você percebe que sua linguagem é agora tão complicada quanto a que você substituiu, com problemas bobos de sintaxe e bagagem herdada. E de repente, você percebe que se você criou uma nova linguagem, você pode consertar tudo isso ...     

por 27.09.2010 / 15:13
fonte
10

Pela mesma razão, há martelos, chaves de fenda, serrotes manuais, serras de fita, britadeiras, alavancas e uma infinidade de outras ferramentas: nem toda linguagem é perfeita para cada tarefa. Algumas linguagens são direcionadas para domínios de problemas específicos: R é particularmente bom para análise estatística, C é particularmente bom para escrever kernels de sistemas operacionais, Haskell é particularmente bom para cálculos matemáticos ou financeiros, Erlang é particularmente bom em programação concorrente, etc. / p>

Além disso, pelo mesmo motivo que camisas vêm em cores diferentes: algumas pessoas gostam do "estilo" de um idioma em detrimento de outro.

E, é claro, muitos programadores acham divertido inventar um novo idioma, só para ver o que acontece, ou talvez porque eles tenham algum conhecimento sobre idiomas e queiram arranhar uma coceira ou experimentar algumas idéias. / p>     

por 27.09.2010 / 17:15
fonte
8

Porque todos eles sugam (de um jeito ou de outro).

Neste momento, criamos cerca de 5000 idiomas para descrever problemas naturais e nenhum deles está disponível para escrever programas (um exemplo seria "inglês").

Até que alguém encontre uma maneira de criar uma linguagem de programação que possa expressar o que você pode expressar em uma frase em uma linguagem natural, ela continuará aparecendo.

    
por 27.09.2010 / 17:08
fonte
7

Código Legado. Se você começar um novo idioma, não precisará ouvir / considerar todas as reclamações quando mudar um idioma antigo. Mesmo que todos concordem que a nova implementação é melhor, ela não pode quebrar o código antigo. E há muito código antigo por aí.

    
por 27.09.2010 / 14:24
fonte
5

Obviamente, uma motivação importante para criar uma nova linguagem é conseguir algo melhor do que os idiomas já existentes. E como há sempre espaço para melhorias, sempre haverá novas linguagens.

Os interesses comerciais são outro grande motivo. Acredito que seja importante, por exemplo, a Microsoft, que eles possam oferecer uma linguagem para cada necessidade, para que as empresas e desenvolvedores prefiram suas plataformas.

    
por 27.09.2010 / 14:22
fonte
4

porque é divertido criar novos idiomas mesmo que eles não tenham uso real

An esoteric programming language (sometimes shortened to esolang) is a programming language designed to test the boundaries of computer programming language design, as a proof of concept, or as a joke.

    
por 14.02.2011 / 18:09
fonte
3

Criar uma linguagem de programação é bastante divertido. Está perto de um trabalho criativo, já que você não está limitado aos requisitos anteriores. Não é tão difícil de implementar, já que você pode sempre compilar para C e compilar o código C para um desempenho adequado se você estiver escrevendo um compilador em primeiro lugar.

Claro, a maioria de nós tem menos boas idéias do que achamos que temos, então elas acabam sendo decepcionantes, ou não sendo amadas por ninguém além do designer original.

Pense em qualquer linguagem de programação que você conheça. Você pode facilmente chegar a várias coisas que você não gosta, certo? Você presumivelmente tem idéias de como isso pode ser consertado. Com um pouco mais de incentivo, supondo que você saiba muito sobre a construção de compiladores (e muitas pessoas o fazem), você pode começar a projetar e até mesmo implementar o seu próprio.

    
por 27.09.2010 / 16:16
fonte
1

novas linguagens de programação são construídas por diversos motivos, principalmente porque há um novo paradigma de programação ou, devido aos avanços no hardware, as pessoas criam novas linguagens para aproveitar os novos recursos de hardware, como multitarefa, etc.

no meu caso, eu costumo construir pequenos compiladores (com uma nova linguagem de programação), por razões de especialidade. se eu fizer muitos jogos, e eu acredito que uma linguagem de programação feita especificamente para o desenvolvimento de jogos resultará em código menor e mais rápido e desenvolvimento mais rápido, então eu o construo. e no final, verifica-se que também pode ser usado para outras programações de uso geral.

Eu acho que a maioria das pessoas que criam linguagens de programação tem um propósito específico em mente, existem aqueles que as criam para propósitos gerais desde o começo. mas a maioria não é.

A propósito, eu acho que existem muitas linguagens de programação, mas centenas de novas linguagens sempre surgem. alguns fora de diversão, alguns fora de um propósito de nicho, como um projeto de escola, ou por centenas de outras razões. e, mais cedo ou mais tarde, um novo se tornará popular. Nunca vai acabar.

    
por 14.11.2012 / 13:17
fonte
0

Pela mesma razão, existem tantos < whatever whatever > e continuamos criando novos < seja o que for >

Existem dezenas de estruturas PHP MVC, por exemplo, mas as pessoas sempre criarão novas para preencher necessidades específicas, para evitar tornar-se dependentes de alguma outra equipe, ou apenas para tentar criar algo melhor. O mesmo vale para basicamente todo tipo de ferramenta ou aplicação.

É uma coisa muito boa, praticamente vantajosa para todos na minha opinião.

    
por 27.09.2010 / 14:58
fonte
0

As universidades contribuem com muitas linguagens de programação, assim como corporações muito grandes, como a Ericsson (Erlang = Ericsson), Bell Labs (linguagens B e C) e Google (a linguagem Go há alguns meses). Muitos dos que foram escritos como parte da pesquisa universitária não são muito usados. Existem algumas exceções notáveis, no entanto. Eu suponho que escrever seu próprio idioma / compilador seja um bom tópico para teses de PhD de pessoas que estudam CS Teoria ou disciplinas relacionadas. Parece-me que o Python é uma das primeiras línguas a nascer do esforço colaborativo online de vários programadores em torno de uma única ideia.

    
por 27.09.2010 / 21:39
fonte
0

Existem algumas razões, a maioria é porque as pessoas pensam que o que existe não facilita a solução de alguns problemas. Alguns são apenas por diversão ou por interesse acadêmico.

Eu acho que há um argumento sólido de que a questão de como você desenha a linguagem perfeita ainda não está resolvida (e talvez nunca seja). Então, enquanto as pessoas tiverem novas idéias sobre o que seria uma ótima linguagem, as pessoas continuarão tentando. Algumas dessas tentativas mapearão novos espaços legais como Erlang e alguns floparão, mas desde que algo seja aprendido no flop, tudo bem.

    
por 14.02.2011 / 15:59
fonte
0

Muitas pessoas esquecem que "outra nova linguagem semelhante para programadores antigos" é "uma nova linguagem para novos programadores".

O que eu quero dizer com isso?

Bem, para programadores de "vários anos", Java ou C # podem ser linguagens de programação adicionais para Cobol existente, (OO / Procedural) Basic, C / C ++, enquanto que para "novos" programadores, Java ou C # são novas linguagens, enquanto Cobol, (OO / Procedural) Básico, C / C ++ não existe para eles, então reinventar a roda se torna uma coisa comum ...

    
por 14.02.2011 / 19:01
fonte
-1

Como mencionado anteriormente, os idiomas tentam segmentar determinadas tarefas específicas e os novos idiomas podem segmentar uma nova área. Esses idiomas podem receber recursos de outros idiomas que estão atualmente fora.

Outra razão para novos idiomas é tentar incorporar muitas tarefas diferentes e ser a linguagem preferida para muitas necessidades diferentes. Algumas dessas línguas estão tentando ser todas as linguagens abrangentes que você sempre usaria, não importando a necessidade que você tenha.

    
por 27.09.2010 / 14:28
fonte
-1

Aprendi na minha aula de linguagens de programação que a maioria das linguagens foi inventada para coçar uma coceira. A maioria das linguagens foi inventada para expressar melhor alguns conjuntos de algoritmos. Por exemplo, linguagens funcionais foram inventadas para dar aos algoritmos recursivos um espaço muito mais expressivo.

Perguntar por que existem tantos idiomas é como perguntar por que o C ++ 0x? :)

Além disso, quanto mais idiomas você conhece, mais expressivo você pode se tornar - isso é verdade tanto em linguagens naturais quanto em programação!

    
por 17.06.2011 / 01:35
fonte