진실 0: 이제는 말할 수 있다

May 23, 2005 21:14
 
내가 Smalltalk에 대해서 열광하면 소위 "전산을 전공했던" 친구들은 한결같이 이렇게 말했다.
 
  • "주류 언어가 될 수 없었던 건 이유가 있어어야."
  • "Smalltalk.. .그거 너무 무겁고 느리지 않나?"
  • "그거, 소스 몇 번 봤는데, 배우기 어렵더라..."
  • "Smalltalk는 '하나의 커다란' 시스템이지 언어가 아냐. 완전, 바다야, 바다."
  • "훗, Smalltalk 시스템... 쳇, 비싸서, 어디, 써보기나 하겠어?"
  • "Smalltalk는 연구용에나 쓰는 언어야. 실제로 쓰기는 어려운 점이 많지."
 
어찌보면 이 말이 맞는지도 모른다.
SmalltalkSmalltalk
Smalltalk
가 
CC
C
/
C++C++
C++
나 사촌뻘인 
Java Java
Java
처럼 널리 쓰이지 못하고 있는 건 위와 같은 단점을 가지고 있기 때문이라고 생각하기 쉽다.
요즘 한창 주가를 달리는
PythonPython
Python
이라는 스크립팅 언어에도 Smalltalk가 밀리는 걸 보면, Smalltalk에 뭔가 문제가 있어도 단단히 있는 게 아닐까?
 
 
겉으로 쓰윽~ 훑어보는 Smalltalk는 어려워 보인다. ---;; 그럼은 Squeak겉으로 쓰윽~ 훑어보는 Smalltalk는 어려워 보인다. ---;; 그럼은 Squeak
겉으로 쓰윽~ 훑어보는 Smalltalk는 어려워 보인다. ---;; 그럼은 Squeak
 
물론 나도 처음엔 그랬었다. 그러나 Smalltalk를 7년째 사용해 온 지금, 나는 위의 말이 모두 '오해에서 비롯된 말'임을 안다. 물론 Smalltalk 언어가 '주류가 될 수 없었던 이유'는 있다. 그러나 그 '이유'가 단지 Smalltalk 언어에 있는 건 아니다. 오히려 신기하게도, 요즘 사용되는 개발 툴이나 언어는 Smalltalk를 닮아 가고 있다.
만약 Smalltalk에 여러 가지 단점이 있고 한계가 있어서 그 개념을 재론할 가치도 없었다면 30년이 다 되어가는 시스템과 개념이 현재에 받아들여지겠는가?
 
1970년대 중반에, 이미 GUI와 통합개발환경이 존재했다면, 믿겠는가?1970년대 중반에, 이미 GUI와 통합개발환경이 존재했다면, 믿겠는가?
1970년대 중반에, 이미 GUI와 통합개발환경이 존재했다면, 믿겠는가?
 
Visual C++의 디버깅 화면Visual C++의 디버깅 화면
Visual C++의 디버깅 화면
 
 
이것이 원조이다. Smalltalk의 디버깅 화면이것이 원조이다. Smalltalk의 디버깅 화면
이것이 원조이다. Smalltalk의 디버깅 화면
 
Smalltalk 언어가 주류 언어가 되지 못한 건, 순전히 '시대를 잘 못 타고났기 때문'이다. 만일 아인슈타인이 원시시대에 태어났다면 우리가 기억하는 그의 업적과는 사뭇 다른 일이 일어났을지도 모른다. 전산을 '전공'했고 '많은 공부'를 한 사람들이 Smalltalk에 대해서 가지고 있는 '편견'과 '오해'를 풀어줄 "진실" 시리즈를, 지금부터 시작한다. 기대하시라!!!