TypeScript 창시자, AI를 '재탕'이라 평하다.

by DD
4개월 전
조회수 14

TypeScript 창시자 Anders Hejlsberg는 AI를 '재탕' 기술로 평가하며, 기존 언어가 AI 코드에 적합하다고 언급함

TypeScript 7.0의 핵심인 네이티브 컴파일러(Native Compiler) 포팅 과정에서 Go 언어를 선택한 배경을 설명함

AI를 활용한 코드 포팅 시 결정적 결과(Deterministic Outcome) 확보의 어려움을 언급하며, 툴링(Tooling) 변화를 강조함

커뮤니티에서는 Hejlsberg의 AI 평가에 대한 아이러니(Irony)와 함께 AI의 역할 변화에 주목함

TypeScript 컴파일러(Compiler) 네이티브 포팅(Native Porting)의 기술적 배경

Hejlsberg는 TypeScript 컴파일러를 네이티브 코드로 포팅한 이유로 성능 향상(Performance Improvement)을 강조했다. 특히, V8 JavaScript 엔진 위에서 실행되던 기존 컴파일러의 한계를 극복하고, 공유 메모리 동시성(Shared Memory Concurrency)을 활용하기 위해 Go 언어를 선택했다. 이는 10배의 성능 향상을 목표로 한 결정이며, 기존 코드의 동작 방식을 정확히 유지하기 위해 함수 단위의 포팅이 아닌, 전체 코드 이식을 선택했다.

Go 언어 선택과 C# 커뮤니티의 반응

TypeScript 컴파일러 포팅 과정에서 Go 언어를 선택한 것은 C# 커뮤니티의 반발을 샀다. Hejlsberg는 C# 대신 Go를 선택한 이유에 대해 JavaScript와 유사한 점을 언급했지만, C# 개발자들은 Hejlsberg가 직접 설계한 언어를 사용하지 않은 것에 대해 아쉬움을 표했다. 이는 언어 선택에 대한 기술적 판단과 커뮤니티의 기대 사이의 균형(Balance)에 대한 중요한 사례를 보여준다.

AI를 활용한 코드 포팅의 도전 과제

Hejlsberg는 AI를 활용한 코드 포팅 시 AI 환각(Hallucination)으로 인한 문제점을 지적하며, 결정적 결과(Deterministic Outcome)의 중요성을 강조했다. AI가 생성한 코드는 기존 코드와 다른 결과를 낼 수 있으며, 이는 잠재적인 버그(Bug) 발생으로 이어진다. 따라서, AI를 활용하여 포팅을 돕는 프로그램을 생성하는 방식을 제안하며, AI의 역할 변화를 시사했다.

AI 기반 툴링(Tooling)의 미래와 TypeScript의 역할

Hejlsberg는 AI가 IDE의 보조 도구를 넘어 개발 과정을 감독하는 수준으로 발전할 것이라고 전망했다. 그는 언어 서비스(Language Service)MCP(Multi-Compiler Platform)의 중요성을 강조하며, AI가 언어의 의미를 이해하고 코드 리팩토링(Refactoring)을 수행하는 방향으로 발전할 것이라고 예측했다. TypeScript는 JavaScript 표준을 따르면서, 툴링 변화에 맞춰 진화할 것으로 보인다.

TypeScript inventor Anders Hejlsberg calls AI "a big regurgitator of stuff someone else has done" but still sees it changing the way software dev is done and reshaping programming tools