S 언어는 미국 최대의 전화 통신 회사인 AT&T의 벨 연구소 (Bell Laboratories)에서 존 챔버스 (John Chambers), 릭 베커 (Rick Becker), 앨런 윌크스 (Allan Wilks)에 의해 개발된 프로그래밍 언어입니다. 프로그래밍 언어는 사용 목적에 따라서 수십 가지가 존재합니다. S 언어는 특별히 통계 연산의 연구 목적으로 개발된 프로그래밍 언어 입니다.


S 언어 개발에 참여했던 존 챔버스가 "S 언어의 목적은 아이디어를 빠르고 충실하게 소프트웨어로 전환하는 것이다." 라고 했을 정도로 S 언어는 매우 유연한 자료 조작 및 변환 환경을 제공하며, 매우 뛰어난 그래픽 구현능력도 가지고 있습니다. 참고로 우리가 흔히 알고있는 유닉스 (UNIX) 운영체제와 프로그래밍 언어인 C, C++ 또한 벨연구소에서 개발된 것들입니다.

S 언어는 (S 시스템) 이후 R과 S- Plus로 나뉘어 졌는데, R과 S-Plus는 모두 S 언어를 기반으로 작성된 프로그램이라는 점에서 공통점을 가집니다. 따라서 두 프로그램은 상당 부분 상호 호환이 가능하며 R에서 사용하는 대부분의 기능, 구문들이 S-Plus 에서도 적용 가능합니다.

 


그러나 S-Plus는 상업용 소프트웨어로 그 저작권(license)이 현재 TIBCO software사에 있는 반면에 , R은 GNU 프로젝트의 GPL (General Public License)을 따르는 공개 소스 소프트웨어로 발전하였다는 점에서 차이가 있습니다. GNU 프로젝트란 무료 소프트웨어 재단 (Free Software Foundation, FSF)에서 유닉스 호환의 소프트웨어를 개발하여 무료로 배포하는 프로젝트는 의미하며, GPL은 GNU 프로젝트가 부여하는 일반 공중 사용 허가서 입니다. 따라서 GPL이 부여된 소프트웨어는 무료이며, 프로그램의 사용이나 수정, 재배포에 제약이 없을 뿐만 아니라 수정이나 재배포된 프로그램은 다시 GPL을 부여받게 됩니다. 그렇기 때문에 GPL을 따르는 R을 GNU R이라고 하며, R은 수많은 프로그래밍 기술자들과, 수학자, 통계학자 및 다양한 분야들의 전문가들에 의해 기능이 개선되고 무료로 계속 재배포되면서 발전하고 있습니다.

+ Recent posts