JavaScript 런타임이라고 하면 보통 익숙한 엔진 이름부터 떠올라. Ant는 다른 길을 내세워. 자체 개발한 Ant Silver 엔진을 넣은 약 8.6MB 단일 바이너리로 실제 npm 패키지를 실행한다고 소개했어.1

작은 바이너리보다 눈에 띄는 측정

Ant가 공개한 비교에서 Hono를 불러오고 라우트 두 개를 등록한 뒤 종료하는 콜드 스타트는 5.4ms였어. 같은 조건의 숫자로 Bun 12.8ms, Deno 24.8ms, Node.js 31.1ms를 함께 제시했지. 다만 이 측정은 모듈 해석과 초기화 비용만 본 짧은 예제야. 애플리케이션 전체의 성능을 비교한 결과는 아니야.1

호환성도 함께 내세워. Ant는 V8·JSC·SpiderMonkey를 감싼 구조가 아니며, compat-table 100%와 WinterTC 준수를 표시한다고 설명해. Hono, Elysia, TypeScript, React, Rolldown, Wasm을 실행할 수 있다는 주장도 붙였어.1

개발 흐름을 줄이는 방식

사용법은 별도 단계를 덜어내는 쪽이야. ant app.ts로 TypeScript 파일을 직접 실행하고, ant server.js로 기본 예시 서버를 띄울 수 있다고 해. 파일의 기본 fetch export를 서버로 제공해서 Hono 같은 프레임워크를 별도 어댑터 없이 실행할 수 있고, tsconfig 조정이나 번들러, dist 디렉터리도 필요 없다고 설명하지.1

패키지 설치 속도는 npm보다 최대 40배 빠르다고 내세워. 이 역시 Ant가 제시한 수치야. 실제 체감은 패키지 구성과 네트워크 조건에 따라 달라질 수 있으니, 숫자만으로 일반적인 우열을 정할 수는 없어.

런타임 안에 격리와 유통까지 넣다

Ant의 범위는 실행 파일에서 끝나지 않아. ant:sandbox는 신뢰할 수 없는 JavaScript를 VM 격리 경계에서 실행한다고 설명해. 각 샌드박스는 KVM 또는 Hypervisor.framework VM을 쓰고, 파일시스템은 쓰기 권한을 명시하지 않으면 읽기 전용이며, 네트워크는 기본 차단하고 지정한 포트만 전달한다고 해.1

패키지 쪽에는 npm 프로토콜과 호환되는 공개 레지스트리 ants.land를 붙였어. Ant뿐 아니라 npm·Yarn·pnpm·Bun에서도 접근할 수 있고, 브라우저용 esm.ants.land도 제공한다고 설명하지. 레지스트리에는 문서·라이선스·호환성을 반영한 0~100점 정보가 포함된다고 해.1

아직 모르는 것

이번 발표에서 분명한 건 Ant가 무엇을 만들었고 어떤 숫자를 내세우는지야. 반면 실제 생태계가 얼마나 넓은지, 샌드박스가 어떤 위협 모델과 운영 조건에서 안전한지, 다른 런타임과의 비교가 더 다양한 프로그램에서도 유지되는지는 이 자료만으로 알 수 없어.

그래서 다음에 볼 것은 단일 숫자의 갱신보다 사용 조건이야. 호환성을 표시한 패키지가 실제 프로젝트에서 얼마나 문제없이 돌아가는지, 콜드 스타트 측정이 더 큰 앱과 다른 하드웨어에서도 반복되는지, VM 격리와 패키지 유통이 함께 운영될 때 어떤 제약이 드러나는지가 Ant의 다음 장면이 될 거야.

각주

  1. Hada.io, 「Ant, 경량 JavaScript 런타임과 생태계」 원문 ↩︎ ↩︎2 ↩︎3 ↩︎4 ↩︎5 ↩︎6