현재 대부분의 설문 조사에서 세계에서 가장 인기 있는 프로그래밍 언어는 자바스크립트(JavaScript)이다. 하지만 JSON(JavaScript Object Notation) 창시자이자 자바스크립트의 개발에 참여해 자바스크립트의 아버지로 불리는 더글라스 크락포드(Douglas Crockford )는 자바스크립트가 프로그래밍하는데 오히려 장벽이 되고 있다고 외신 Devclass를 통해 밝혔다.
크락포드는 지난 7월, Evrone와의 인터뷰에서 아래와 같은 주장을 펼쳤다.
"오늘날 우리의 최선은 자바스크립트를 은퇴시켜버리는 것이다. 20여 년전, 저는 자바스크립트의 몇 안 되는 옹호자 중 한 명이었다. 자바스크립트는 중첩된 함수와 동적 객체를 똑똑하게 만들어냈다. 개인적으로 10년 동안 자바스크립트의 결함 수정 작업을 좋아했다. 그리고 ES5(ECMAscript: ECMA-262 기술 규격에 정의된 표준화된 스크립트 프로그래밍 언어)로 아주 약간의 성공을 거두었다. 하지만 자바스크립트는 오히려 시간이 지날수록 훨씬 더 큰 문제를 일으키고는 했다. 결국, 자바스크립트는 프로그래밍을 하는데 하나의 장벽이 되었다. 이제 자바스크립트가 아닌 다음 세대의 새로운 프로그래밍 언어를 찾아야 한다."
![자바스크립트는 여전히 대부분의 설문 조사에서 세계에서 가장 인기 있는 프로그래밍 언어다. [사진:StackOverflow]](/news/data/2022/08/08/p179564980394218_136.jpg)
올해 초 StackOverflow의 설문 조사에 따르면 자바스크립트는 65%의 개발자들이 사용하고 있어, 48%를 기록해 두 번째로 많이 사용되는 파이선보다 앞서 있다. (HTML, CSS, SQL 제외). 이것은 보기 드문 업적이다.
크락포드와 함께 자바스크립트를 만든 브렌든 아이히(Brendan Eich)는 2018년 dot.JS 컨퍼런스를 통해 1995년 넷스케이프(Netscape)를 위한 언어인 자바스크립트의 초기 모형 ‘모카’를 불과 10일 만에 개발했다고 밝혔다.
아이히는 자신이 만든 프로그래밍 언어를 "너무 서둘러 개발했다"라고 말했다. 그는 "직접 개발한 프로그래밍 언어에 실수와 결함이 발생할 것을 알고 있었다. 따라서 언어로서 변화하도록 만들었다. 웹 개발자들은 이 언어를 자신들이 원하는 방식으로 사용하게 되었다”라고 설명했다.
이어서 자바스크립트가 크게 성공한 이유는 여러 가지라고 전했다.
자바스크립트의 성공 비결은 아이히의 선견지명, 쉽게 배울 수 있으며, 실수가 일어날 수 있는 코드를 용인하는 것 등이 될 것이다.
하지만 아이히는 자신이 만든 프로그래밍 언어의 특징에 대해 “크게 후회한다. 이것은 중요한 수학적 속성을 깨뜨렸다”라고 밝히기도 했다.
또 다른 요인은 브라우저 기반 응용 프로그램을 데스크톱과 경쟁력 있게 만들려는 구글의 결단이 모질라의 스파이더몽키(SpiderMonkey) 및 애플의 JavaScript Core와 함께 언어에 놀라운 JIT 컴파일 성능을 제공한 ‘V8 엔진(2008)’을 전 세계에 제공했기 때문이다.
2009년, 라이언 달(Ryan Dahl)은 노드.js(Node.js)를 내놓았고, 이를 통해 V8은 브라우저 외부에서 실행될 수 있게 되었다. 달은 서버 응용 프로그램을 염두에 두고 있었지만, 오늘날 노드.js 및 NPM(Node Package Manager)은 대부분의 웹 응용 프로그램의 개발 프로세스에 필수가 되었다.
크락포드가 언급한 문제는 자바스크립트가 많은 복잡한 기능 향상과 함께 오늘날 일반적인 응용 프로그램에는 웹팩(WebPack), 롤업(Rollup) 또는 다른 번들러를 사용하는 빌드 프로세스가 포함되어 있다는 것이다.

많은 웹 개발자는 자바스크립트보다는 자바스크립트로 컴파일되는 타입스크립트(TypeScript)를 사용한다. 타입스크립트는 앞서 언급한 설문 조사에서 세 번째로 선호하는 프로그래밍 언어로 이름을 올리며, 자바스크립트가 모든 프로그래머들에게 사랑받는 것은 아니라는 것을 보여주었다. C, C++, C# 및 Rust를 포함한 언어로 타겟팅할 수 있는 바이너리 형식인 웹어셈블리(WebAssembly)의 출현은 자바스크립트의 우위를 무너뜨리는 혁신을 가져올 수도 있다.
해커 뉴스는 "자바 스크립트는 불과 몇 년 만에 인기가 폭발적으로 증가했다. 하지만 프로그래밍 생태계는 매우 복잡하다. 풀 타임 자바스크립트 개발자 사이에서도 재갈을 물리고 있습니다. 우리 중 누구도 따라갈 수 없다"라는 어느 한 개발자의 설명을 전했다.
자바스크립트는 복잡한 요구들에 발맞춰 진화하고 있지만 몇몇 핵심적인 결점들은 수정할 수 없기에 지속적인 위기들이 나타날 것이다.
크락포드가 자바스크립트를 대체하기 위해 선택한 E는 확연히 구분되는 표본이 될 것이다. 마크 밀러(Mark Miller), 크락포드 등이 만든 E는 보안 컴퓨팅을 위해 설계된 객체 지향 언어이며, 크락포드는 "자바스크립트의 여러 단점을 제거할 것"이라고 밝혔다.
크락포드는 또한 자바스크립트가 DOM(Document Object Model) 조작을 위해 모든 브라우저에서 지원하는 언어이기 때문에 특히 이동하기가 어려울 것이라는 것을 지적했다.
크락포드는 "크게 두 가지 어려움이 있습니다. 첫째, 우리는 아직 자바스크립트를 대체할 다음 언어가 없다. 보안 분산 프로그래밍을 위해 특별히 설계된 최소한의 기능 기반 행위자 언어여야 합니다. 더 적은 것을 고려해서는 안 된다. 둘째, 우리는 모든 브라우저 제조업체가 이를 채택하고 동시에 DOM을 잘 설계된 인터페이스로 대체해야 한다”라고 전했다.
[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]