20년 전 리눅스(Linux) 배포판에 포함되어 많은 이들에게 사랑받았던 고전 오픈소스 퍼즐 게임 '크랙 어택(Crack Attack!)'이 대규모 언어모델(LLM)의 도움으로 웹 브라우저에서 즐길 수 있게 되었습니다. 한 개발자가 LLM에게 이 게임을 웹으로 포팅해달라고 요청했고, LLM은 기존 C++ 코드를 웹 환경에 맞게 타입스크립트(TypeScript)로 재작성하는 놀라운 능력을 선보였습니다.
개발자는 처음 LLM에게 엠스크립튼(Emscripten)을 사용해 재컴파일하는 방식을 제안했지만, LLM은 더 근본적인 접근 방식을 택해 게임의 핵심 로직과 렌더링 부분을 타입스크립트로 새로 구현했습니다. 물론, 초기 버전에는 게임 플레이와 렌더링에서 원작과의 차이가 있어 개발자가 여러 차례 프롬프트(prompt)를 통해 수정 지시를 내렸습니다. 이 과정을 거쳐 최종적으로는 원작의 게임성과 시각적 요소를 거의 완벽하게 재현한 웹 버전이 완성되었습니다.
이번 사례는 LLM이 단순한 텍스트 생성이나 요약을 넘어, 복잡한 소프트웨어 개발 과정, 특히 레거시 코드(legacy code)를 현대적인 플랫폼으로 전환하는 데 강력한 도구가 될 수 있음을 시사합니다. 개발자가 직접 모든 코드를 분석하고 재작성하는 대신, LLM을 활용해 초기 프로토타입을 빠르게 만들거나 코드 변환 작업을 자동화할 수 있다는 점에서 생산성 향상에 크게 기여할 수 있습니다. 이는 소프트웨어 유지보수 및 현대화 프로젝트에 새로운 가능성을 열어줄 것으로 기대됩니다.
