인터프리터 언어의 장점

요즘 PL (프로그래밍 언어)과목을 듣는데… 컴파일 언어와 인터프리터 언어를 비교할때.. 인터프리터 언어의 예로 Lisp, APL, Snobol 4 같은 언어만 나온다. 그중에 나는 하나도 사용해 보지 못했다. Lisp은 아직 사용된다는 것을 알고는 있다.. Emacs도 Lisp이지 아마?

하지만 내가 사용해본 Bash, Perl, Ruby, Python, Java script, PHP, ASP 그 어떤 것도 예에 들어가 있지 않았다.. 물론 중요한 비지니스 로직이나 어플에 컴파일 언어가 많이 쓰이는 것이야 자명한 일이지만.. 스크립트 언어도 열라 많이 쓰이고 있는데… 흠.. 그래서 클래스 넷에 글을 하나 적었다.

빠르게 변화 하는 세상에서 한두번 쓸 프로그램을 잽싸게 짜기에는 스크립트 언어가 짱이지.. ㅋㅋ

개인적으로 웹 어플리케이션, 서버관리쪽에서 일을 다년간 했는데요..
물론 비즈니스 로직의 코어 부분이나 어플리케이션의 critical 한 부분에서 컴파일 언어(C, C++, Java)등이 많이 쓰이는 것은 사실입니다.. 그리고 게임등의 어플리케이션 개발도 물론 컴파일 언어가 대부분이지요..

하지만 빠르게 변화하는 최근의 비즈니스 상황에서 잽싸게 필요한 프로그램을 개발하기 위해서, 그리고 간단한 처리를 하는 서버 스크립트, 그리고 소규모 웹 어플리케이션의 개발, 대규모 프로젝트에서도 코어가 아닌 view 부분의 처리 등에서 스크립트 언어는 정말 많이 쓰이고 있다고 생각하는데요.. 개발 속도면에서 상대가 안되게 빠르기 때문에 생산성도 좋구요.. 또한 컴퓨터의 속도가 빠른 속도로 증가하는 것 때문에 스크립트 언어의 느린 실행속도는 어느정도 커버되고 있고..

Perl, Python, Ruby, Bash script, PHP, ASP 등 수많은 많이 쓰이는 인터프리터 언어들이 수업시간에 하나도 소개가 되지 않는 것은, 인터프리터 언어들의 장점들이 너무 소외시 당하는거 같아 아쉽네요. 최근 현업에서 Lisp도 찾기 쉽지 않지만 Snobol 이나 APL을 찾아보는건 불가능 한 일일테고요.. 당장 우리 실습서버에만 접속해도 Perl 이나 Bash 스크립트 들이 많은데… 우리과 홈페이지나 학교 홈페이지도 PHP로 되어있구요 ^^*

저는 처음에 웹 개발을 C언어로 시작했는데.. 나중에 Perl로 스트링 처리하는 것을 해보고 C로 삽질한 수많은 시간들이 너무도 억울했던 기억이 나는군요. 최근에는 Python 이나 Ruby같은 객체지향으로 설계된 범용 스크립트언어도 많이 사용되고 있구요.. 마지막으로 무엇보다도 스크립트 언어의 장점으로 “재미있다”는 건데요.. 이런 뭐 동의 하거나 말거나.. Ruby라는 언어는 “프로그래밍하기 재미있는” 언어라고 확신하는 편이고.. 믿거나 말거나 ㅋㅋ

스크립트 언어가 무조건 좋다기보다.. 수 많은 장점이 너무 묻히는거 같아서 아쉬워서 적어 봤습니다.


  1. TENMA Avatar

    게임쪽에는 코어부분은 C++로, 게임 시스템은 Lua로 하는 경우도 늘어나고 있음, 물론 루아 말고도 꽤 있지만 메모리를 적제 차지한단 장점 때문인지 루아가 대세…

  2. 김재호 Avatar

    동감하고 가는 1인^^

  3. 이승엽 Avatar
    이승엽

    글쎄요. 뭐, 문법적인 부분만 고려한다면야 쉬운 문법을 표방하는 인터프리터 언어에 손을 들어주겠지만, 그게 인터프리터 언어의 특징이고 장점이라고 한다면 좀… 동의하기 어렵네요.
    저는 만들려고만 한다면 스크립트 언어의 문법을 사용하는 컴파일 언어도 얼마든지 만들 수 있다고 생각하거든요.(컴파일 엔진 앞에 인터프리터 엔진을 얹으면 땡… 문제는 그렇게 해 봤자 능률이 올라가지 않으니까 안한다는 것 뿐???) 즉, 인터프리터 언어니까 문법이 쉽고, 컴파일 언어니까 문법이 어렵다는 식의 상관관계는 없다는 게 제 지론입니다. 문법이란 결국 코드를 어떻게 표현하느냐의 문제니까요.

Leave a Reply

Your email address will not be published. Required fields are marked *