# TypeScript 10만 줄을 Rust로, Claude Code 실전 포팅기

> Clean Markdown view of GeekNews topic #26295. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=26295](https://news.hada.io/topic?id=26295)
- GeekNews Markdown: [https://news.hada.io/topic/26295.md](https://news.hada.io/topic/26295.md)
- Type: news
- Author: [davespark](https://news.hada.io/@davespark)
- Published: 2026-02-01T11:49:17+09:00
- Updated: 2026-02-01T11:49:17+09:00
- Original source: [blog.vjeux.com/2026](https://blog.vjeux.com/2026/analysis/porting-100k-lines-from-typescript-to-rust-using-claude-code-in-a-month.html)
- Points: 7
- Comments: 1

## Summary

**TypeScript 10만 줄을 Rust로 옮긴 실험이 AI 코딩의 현실을 드러냅니다.** 전 Facebook 엔지니어 Vjeux는 Pokemon Showdown 엔진을 **Claude Code**로 포팅하며, Rust 경험이 전무한 상태에서도 차분 테스트를 통해 99.96% 일치율을 달성했습니다. 자동화된 테스트와 명확한 지시가 핵심이었으며, 대규모 변환에는 강하지만 아키텍처 설계나 최적화에는 여전히 한계가 뚜렷함을 보여줍니다.

## Topic Body

전 Facebook 엔지니어 Christopher Chedeau (Vjeux)가 **Pokemon Showdown** 배틀 엔진(약 10만 줄 TypeScript)을 **Claude Code**를 활용해 **Rust**로 포팅한 실험  
  
**프로젝트 목표**  
  
* Pokemon 배틀 AI 학습용 고속 오라클(참조 시스템) 구축  
* 기존 TypeScript 구현 → 너무 느림 (수백만 배틀 시뮬레이션 불가능)  
* 목표 언어: Rust (고성능) → 하지만 본인 Rust 경험 **제로**  
  
**주요 성과**  
  
* 1개월 (실제 작업 약 2~4주) 만에 약 10만 줄 포팅 완료  
* 약 5,000 커밋 생성  
* 실행 속도 **3.5배** 향상  
* 차분 테스트 결과 일치율 **99.96%** (200만 랜덤 배틀 기준)  
  * 나머지 0.04%는 원본 TS 코드의 버그로 추정  
  
**성공의 핵심 전략**  
  
* **차분 테스트 (differential testing)** 도입  
  * TS 원본 vs Rust 버전 동시 실행 → 결과 비교  
  * 불일치 사례 → Claude에게 로그 보여주며 수정 지시  
* Rust 문법 거의 모르는 상태에서도 검증 가능  
  
**Claude가 겪은 주요 어려움**  
  
* 개별 파일 포팅은 잘함 ↔ **파일 간 통합**에서 빈번한 문제 발생  
  * 예: 동일 개념(‘move’)을 서로 다른 구조체로 정의  
* **컨텍스트 윈도우 한계** → 중간 요약 과정에서 중요 정보 손실  
* “더 좋게” 만들려는 경향 → 명시적 “라인 바이 라인 포팅” 지시 무시하고 리팩토링 시도 → 버그 양산  
* **최적화 요청** → 계획은 훌륭해 보였으나 실제 성능 개선 거의 없음 (일부는 오히려 느려짐)  
  
**특이한 워크플로우 해킹**  
  
* Claude의 사용자 승인 요청 자동화  
  * AppleScript로 몇 초마다 Enter 자동 입력 → 24시간 무인 실행  
  * (보안 위험 있지만, 일회성 오라클 목적이라 감수)  
  
**AI 코딩 도구의 현주소 (평가)**  
  
* 기계적 변환·대량 포팅 작업 → 매우 강력  
* 성능 최적화, 아키텍처 설계 등 고차원 작업 → 아직 부족  
* Hacker News 논쟁  
  * 회의론: 유지보수 불가능, “컴파일만 되는” 코드  
  * 옹호론: 차분 테스트로 충분히 신뢰 가능 + 인간 대비 시간 단축 극대  
  
**실무 적용 교훈 3가지**  
  
* 철저한 **자동화된 테스트 체계** 필수 (차분 테스트 없으면 실패 확률 매우 높음)  
* **명확하고 좁은 범위**의 지시가 가장 잘 먹힘 (“라인 바이 라인 포팅” O vs “개선해줘” X)  
* AI는 **도구**일 뿐 → 개발자가 여전히 문제 진단·질문 설계·방향성 유지해야 함  
  
→ Rust 전혀 모르는 사람이 10만 줄 규모 코드를 한 달 만에 실용 수준으로 옮긴 사례 → **AI 코딩의 실용성 입증** 사례이면서 동시에 **한계도 명확히 드러낸** 대표적인 실험  
  
https://aisparkup.com/posts/8701

## Comments



### Comment 50524

- Author: ahwjdekf
- Created: 2026-02-03T11:30:12+09:00
- Points: 1

이건 테스트 케이스 작성이 만능이 아니라는걸 간과하고 있음. 인풋 아웃풋 정상만이 전부가 아님. 결국 10만줄을 다시 리뷰해야 할것이다.
