A maioria das linguagens de programação possui algumas decisões de design que influenciam seu uso e aplicabilidade.
Por exemplo:
- O Python focou na manutenção / legibilidade do código e teve o recuo como parte da própria linguagem.
- A intenção de Java era ser OOP multiplataforma 'mais fácil' e 'mais amigável' que o C ++
- O Objective-C foi criado como um wrapper OO em torno de C sem conhecer o futuro do C ++ na época
- Erlang foi projetado para sistemas concorrentes e altamente tolerantes a falhas
- PHP projetado para lidar com a criação dinâmica de páginas da web
- O CoffeeScript foi projetado para expor as partes boas do Javascript e adicionar açúcar sintático OOP e ocultar as nuances (globais etc.) de JS 'nos bastidores' etc.
Cada linguagem de programação tentou explorar e capitalizar um nicho específico do IMHO. A seguir, minhas perspectivas sobre quais foram os princípios fundamentais das linguagens de programação e que governaram sua evolução e ampla adoção. Claro, existem muitos mais, mas a lista é apenas um exemplo
No entanto, tenho me esforçado para entender os princípios básicos nos quais o Ruby se baseia e sua crescente popularidade. Quais foram os princípios fundadores do Ruby que o tornam popular hoje? Ou é o gênio de um homem que projetou o framework Rails? Se foi o último que Ruby tornou o design do Rails melhor / mais fácil / mais rápido? Em que sentido?
A razão mais comumente citada pelo criador é '... queria uma linguagem de programação divertida e de tipo fraco' - não vejo isso como uma razão para criar uma nova linguagem de programação completamente! Programar é muito divertido IMHO, independentemente do idioma (cada idioma tem algumas partes ruins, mas é possível contorná-lo ou viver com ele).
Então, qual nicho (ou o que) o Ruby explorou que não é explorado pelos idiomas atuais? Qual é o 'ponto forte' (USP) do Ruby que levou à sua ampla adoção? O que Ruby fez que não foi feito antes (ou foi extremamente difícil)?
Eu não sou um programador de Ruby, mas apenas um Ruby noob e, portanto, a confusão.
Isenção de responsabilidade : NÃO é uma guerra de chamas e não estou procurando respostas para o tipo de linguagem Ruby vs Programming. Estou procurando as decisões de design nas quais o Ruby se baseia, que levou à adoção generalizada. Qual o nicho que Ruby satisfaz para se tornar popular ou que é puramente atribuído ao Rails?