앨런 케이의 1993년 논문 'Smalltalk 초기 역사' 전문, worrydream.com에 공개
- 앨런 케이가 HOPL-II(1993)에서 발표한 Smalltalk 초기 역사 논문 전문이 worrydream.com에 스캔본과 교정용 GitHub 저장소 링크로 공개됨. 1960년대 ARPA의 시분할·그래픽 연구부터 1983년 Smalltalk-80 릴리스까지를 다룸
- 케이는 1992년 5파운드 노트북(연말 가격 $700 미만)을 임시 다이나북이라 부르며, 평면 비트맵 화면과 겹치는 창, 객체지향 소프트웨어가 60년대 말 구상과 거의 일치한다고 씀
- 세대별 발전은 1971~72년 PARC의 Smalltalk-71·72, 1974년 ooze 저장소 관리, 1976년 상속 도입, 1980년 릴리스 버전 순이며, 부록에 KiddiKomp 메모와 Smalltalk-72 인터프리터 설계, Smalltalk-76 내부 구조가 실림
- 케이는 SKETCHPAD, JOSS, LISP, SIMULA를 60년대 4대 프로그래밍 구상으로 꼽고 Xerox PARC LRG의 Dan Ingalls와 Adele Goldberg에게 논문을 헌정함
- 해커뉴스 토론에서는 Instantiations가 1988년 설립 이후 매년 Smalltalk 새 버전을 출시한다는 점과, Smalltalk-76부터 Simula 67 객체 모델을 구현했다는 Ingalls의 1978·2020년 논문이 함께 언급됨
Hacker News opinions
어제 친구랑 얘기했는데 그 친구가 Instantiations 다님. 1988년에 세워진 회사가 지금도 매년 Smalltalk 새 버전을 내고, 고객들이 만족하면서 쓰고 있더라.
근데 취미용 라이선스가 없어서 아쉬움. 가격은 전화나 이메일 문의고 업그레이드가 네 자릿수라니. 예전에 Windows용 Smalltalk 컴파일러 사놓고 안 쓴 게 후회됨. Dolphin Smalltalk라도 해볼까.
이 얘기 나올 때마다 슬픔. 10년 넘게 통신이랑 금융 파생상품 쪽에서 프로 Smalltalk 개발자로 일했는데 Java, JavaScript, 심지어 VisualBasic한테 밀렸음. 퇴사 면담 끝나고 HR이 하더라, Smalltalk 개발자 한 명 값이면 경험 적은 프로그래머 4~5명 뽑을 수 있다고.
넌 나쁜 사람 아님. 근데 그 schadenfreude는 머릿속에서만 일어나는 일임. 2026년은 인류 역사상 소프트웨어 만들기에 가장 놀라운 해임.
난 팝콘 벌써 준비해둠. 기다려짐.
IBM이랑 다른 Smalltalk 벤더 잘못임. 거의 처음부터 Java로 갈아탔잖음. Eclipse에 아직 Visual Age Smalltalk 오브젝트 브라우저가 남아 있고, OS/2 SOM 보면 Smalltalk가 .NET 비슷한 역할이었음.
IBM Visual Age Smalltalk 썼던 거임?
많이들 모르는데 Smalltalk가 NeXTSTEP과 Objective-C에 큰 영향 줬음. Interface Builder에서 Project Builder, XCode로 이어지는 GUI 직렬화나 Obj-C 메시지 전달이 다 그 흔적임.
거기서 Xerox 내부의 Mesa, Cedar, Interlisp-D로 이어지고, Mesa랑 Cedar가 Wirth의 Modula-2/Lillith, Oberon에 영향을 줘서 Rob Pike가 Plan 9용 ACME 만들 때 참고했음. StrongTalk랑 Objective-C는 Java JIT에도 영향. Smalltalk에서 Self가 나오고 Self가 V8 JIT 설계에 영향을 줬고, Ruby도 있음.
또 하나 모르는 사람 많은 게, Smalltalk-76부터 Simula 67 객체 모델을 구현했음. Smalltalk-72에서 크게 벗어난 지점이고 Ingalls의 1978년, 2020년 논문이 이 글보다 더 재밌음.
NeXTSTEP은 Unix 호환성을 위해 다이나미즘 일부를 포기한 실용판 Smalltalk 환경이라고 볼 수 있음. 당시 NeXT는 Sun, SGI, HP랑 경쟁하는 Unix 워크스테이션이었고. Alto에서 Smalltalk는 느렸는데, RISC로 유명한 David Patterson 제자가 Smalltalk VM 성능 작업을 했고 그게 Self로 이어져 Java VM 설계에 영향 줬음.
대학 때 Brad Cox가 Objective-C 강연하러 온 걸 봤는데, Smalltalk 영향이 크다는 걸 분명히 얘기했음. 소프트웨어 IC 개념도 그렇고.
2002년에 대학에서 OOP를 Smalltalk로 배웠음. Lisp 다음 두 번째 언어였는데, 프로그램 안에 '살고' 있는 느낌이 제일 좋았음. 나중에 Java 1.4 배울 때 컬렉션 다루는 게 너무 번거로웠고, 이후 커리어에서 Ruby만 비슷한 기쁨을 줬음.
Ottawa 쪽이었음? 캘턴이었나? 오타와가 Smalltalk 핫스팟이었던 것 같은데.
Yoot Saito가 1992년에 앨런 케이 인터뷰한 걸 OCR 교정해서 올려놨음. Bret 버전에 빠진 부록 섹션도 그림이랑 같이 복원했고 인물, 기관, 기술 색인이랑 타임라인도 붙였음. 1993년 MACWORLD Japan 매킨토시 10주년 특집용이었고 일본에서만 발행됐음.