A qualidade do código desenvolvido em cada uma dessas linguagens é baseada nessas filosofias fundamentais e menos nos desenvolvedores individuais
Cada idioma tem uma cultura em torno dele, porque cada idioma foi desenvolvido por uma razão por alguém com uma agenda e uma filosofia subjacente a por que seu idioma seria melhor em algo do que o que existia na época foi criado.
Como as religiões, as linguagens de programação tendem a atrair pessoas que já têm a mesma predisposição para os principais princípios e filosofias do criador da linguagem.
Exemplo sobre qualidade percebida de soluções
Em um acampamento da Microsoft, você tem:
A filosofia do C # é que ela é mais puramente orientada a objetos, promove idiomas mais modernos e requer mais conhecimento para fazê-lo corretamente e, portanto, deve fornecer soluções de qualidade mais alta. É isso que atrai as pessoas para o VB.
No outro campo da Microsoft:
A filosofia da VB é que eu posso rapidamente e com pouco conhecimento ou esforço criar algo que permita que alguém clique em um botão e faça algo útil e de valor comercial, como isso não é tão importante. É isso que atrai as pessoas para ele em C #.
Aqui estão algumas línguas e expressões faciais nas línguas e suas filosofias:
As pessoas Perl tendem a se preocupar exatamente com o oposto das pessoas com Python.
O pessoal de Java se preocupa em ganhar dinheiro.
As linguagens JVM (Groovy, Scala) se preocupam com a JMV e não com a linguagem Java.
Todas as linguagens específicas da Microsoft (VB, C #, F #, C ++ gerenciado) tendem a se preocupar em ganhar dinheiro no Windows.
As pessoas de Erlang se preocupam com coisas com as quais outras pessoas não precisam se preocupar e não apreciam o que não sabem.
As pessoas ciganas não se importam com o que os outros pensam.
O que esses grupos se preocupam molda a linguagem, seu desenvolvimento e sua comunidade.
As filosofias mudam com a experiência e a necessidade
Eu adotei o ASM e o BASIC porque em 1983 isso era tudo que você tinha. Eu queria escrever jogos e demos, essas eram as ferramentas para fazê-lo. Principalmente ASM para demos.
Adotei o C e depois o C ++ quando era a única maneira de escrever coisas como renderização em 3D e praticamente qualquer outra coisa crítica em termos de espaço e tempo. Não era ASM, então eu aprendi.
Adotei o VB para ganhar dinheiro, pois era o mais próximo dos ambientes de desenvolvimento Scala, Director e CanDo aos quais estava acostumado no Amiga. Eu concordei com a filosofia de desenvolvimento rápido
Adotei o Java desde o início para ganhar dinheiro melhor. Ganhei dinheiro com o VB até 1999 e o deixei para trás quando o Java 1.2 se tornou estável e maduro e a Web já havia entrado em vigor completamente. Eu tinha 4 anos de experiência em Java quando as pessoas realmente começaram a levar a sério. Eu concordei com a gravação uma vez, execute em qualquer lugar onde, quanto mais lugares meu código funcionasse, mais fácil seria vendê-lo. filosofia.
Adotei o Python no final de sua linha do tempo, 2005, porque ele coçava uma coceira que o Java não fazia. Eu precisava escrever código rapidamente para usar algumas bibliotecas que só estavam disponíveis em C e também fazer prototipagem rápida de serviços da Web. Python era mais rápido e menos código para fazer a mesma coisa em Java. Algumas coisas foram colocadas em produção, já que Java permaneceu em Python, muitas coisas nunca chegaram à natureza. Concordei com as baterias incluídas, filosofias de expressões únicas e outras.
Adotei Lua quando precisei colocar um mecanismo de script leve nos meus programas C ++ e Java. Isso foi muito antes do suporte ao JSR233 em Java. Concordei com a incorporação de uma linguagem de script com todos os recursos e fácil de usar, que deve ser uma simples filosofia Lua.
Adotei o Erlang em 2006, quando comecei a precisar de escalabilidade massiva e execução multi-core relativamente indolor em problemas altamente paralelos e execução em várias plataformas. ** Concordo com seu estado não compartilhado, passagem de mensagem, filosofia de estado imutável. * 8
Adotei o Objective-C quando comecei a precisar criar aplicativos OSX e iOS. Eu concordo com a adição da Orientação a Objetos ao C para torná-lo melhor . Também para ganhar dinheiro melhor.
Adotei o JavaScript oficialmente em 2009 porque concordei com a filosofia do CouchDB e ela usa JavaScript. Ainda não gosto de JavaScript quando tenho que lidar com o DOM.
Ainda não adotei oficialmente o Lisp, mas vou finalmente! Eu concordo com a sua. Aqueles que não conhecem o cece são condenados a reinventar sua filosofia.