대부분의 프로그래밍 언어에는 사용 및 적용 가능성에 영향을주는 디자인 결정이 있습니다.
예를 들면 다음과 같습니다.
- 파이썬은 코드의 유지 관리 성 / 가독성에 중점을 두 었으며 들여 쓰기는 언어 자체의 일부였습니다.
- Java의 의도는 C ++보다 플랫폼 간 OOP '간단하고 친근한'것이 었습니다.
- Objective-C는 당시 C ++의 미래를 알지 못하는 C를 중심으로 OO 래퍼로 구축되었습니다.
- Erlang은 높은 내결함성과 동시 시스템을 위해 설계되었습니다
- 웹 페이지의 동적 생성을 처리하도록 설계된 PHP
- CoffeeScript 는 Javascript 의 좋은 부분 을 노출하고 OOP 구문 설탕을 추가하고 JS '뒤에서'의 뉘앙스 (글로벌 등)를 숨기 도록 설계되었습니다 .
각 프로그래밍 언어는 특정 틈새 IMHO를 활용하고 활용하려고했습니다. 위의 내용은 프로그래밍 언어의 기본 원칙이 무엇인지, 그리고 진화와 광범위한 채택 가능성을 지배 한 것에 대한 나의 관점입니다. 물론 더 많은 것이 있지만 목록은 예일뿐입니다.
그러나 저는 루비의 기반이되는 설립 원칙과 인기가 높아지는 것을 이해하기 위해 고심했습니다. 오늘날 루비의 기본 원칙은 무엇입니까? 아니면 Rails 프레임 워크를 디자인 한 사람의 천재입니까? 만약 후자가 Ruby가 Rails의 디자인을 더 좋거나 더 쉽고 더 빠르게 만들었다면? 어떤 의미에서?
제작자에 따라 가장 일반적으로 인용되는 이유는 '... 약한 유형의 프로그래밍 언어가 재미있다'는 것입니다. 새로운 프로그래밍 언어를 만드는 이유는 전혀 없습니다! 프로그래밍은 언어에 관계없이 순전히 재미 있습니다.
그렇다면 루비는 현재의 언어로 악용되지 않은 틈새 시장을 어떻게 사용 했습니까? 널리 채택 된 Ruby의 '강점'(USP)은 무엇입니까? 루비는 이전에 수행되지 않았거나 (매우 어려웠던) 무엇을 했습니까?
나는 루비 프로그래머가 아니라 루비 멍청한 놈이므로 혼란을 겪습니다.
면책 조항 : 이것은 화염 전쟁이 아니며 루비 대 프로그래밍 언어 유형의 답변을 찾고 있지 않습니다. 널리 채택 된 Ruby의 기반이되는 디자인 결정을 찾고 있습니다. 루비는 어떤 틈새 시장이 대중화되었다고 만족 시키나요?