셀프 (프로그래밍 언어)
셀프(Self)는 프로토타입 개념 기반의 객체 지향 프로그래밍 언어이다. 셀프는 객체에 대한 프로토타입 기반 접근 외에도 동적 타이핑과 JIT 컴파일을 사용하는 스몰토크의 방언으로 시작되었다. 1980년대, 1990년대에 언어 디자인을 위한 실험적인 테스트 시스템으로 처음 사용되었다. 2006년, 셀프는 Klein 프로젝트의 일부로서 개발이 시작되었으며 이는 온전히 셀프로 작성된 셀프 가상 머신이었다 최신 버전은 2017년 5월 출시된 2017.1이다.[1]
패러다임 | 객체 지향 (프로토타입 기반) |
---|---|
설계자 | David Ungar, Randall Smith |
개발자 | David Ungar, Randall Smith, 스탠퍼드 대학교, 썬 마이크로시스템즈 |
발표일 | 1987년 |
최근 버전 | 2017.1 |
최근 버전 출시일 | 2017년 5월 24일 |
자료형 체계 | dynamic, strong |
라이선스 | BSD 계열 라이선스 |
웹사이트 | www |
주요 구현체 | |
셀프 | |
영향을 받은 언어 | |
스몰토크 | |
영향을 준 언어 | |
뉴턴스크립트, 자바스크립트, Io, 아고라, Squeak, Lisaac, 루아, 팩터, REBOL |
여러 JIT 컴파일 기법들이 셀프 연구에 개척되고 개선되었는데, 이는 최적화된 C의 최소 절반의 속도를 달성하기 위해 상당히 하이 레벨의 객체 지향 언어가 요구되었기 때문이다. 셀프 개발 중 다수는 썬 마이크로시스템즈에서 이루어졌으며 개발된 기법들은 나중에 자바의 핫스팟 가상 머신에 적용되었다.
어느 시점부터 스몰토크의 한 버전은 셀프로 구현되었다. JIT를 사용할 수 있었으므로 상당히 좋은 성능을 보여주었다.[2]
역사
편집셀프는 제록스 PARC에서 일하던 David Ungar와 랜덜 스미스에 의해 1986년 대부분 개발되었다.
같이 보기
편집각주
편집- ↑ “Self "Mandarin" 2017.1”. 2017년 5월 24일. 2017년 5월 24일에 원본 문서에서 보존된 문서. 2017년 5월 24일에 확인함.
- ↑ Wolczko, Mario (1996). “self includes: Smalltalk”. 《Workshop on Prototype-Based Languages, ECOOP ‘96, Linz, Austria》.
추가 문헌
편집- Published papers on Self
- Chambers, C. (1992), 《The Design and Implementation of the SELF Compiler, an Optimizing Compiler for Object-Oriented Programming Languages》, 스탠퍼드 대학교, CiteSeerX 10.1.1.30.1652