Gleam이 Erlang 소스코드 대신 추상 형태로 컴파일하도록 전환

Key Point
Erlang 추상 형태 컴파일로 빌드 성능이 크게 향상되고 스택 트레이스 정확도가 개선되었으며, JavaScript와 TypeScript 최적화, 에러 메시지 강화, 다른 빌드 도구 통합 개선 등이 Gleam 개발 경험 전반을 크게 나아지게 한다.
핵심 요약
- Gleam v1.19.0 릴리스에서 Erlang 코드 생성기를 완전 재작성하여 Erlang 소스코드 대신 Erlang 추상 형태(abstract forms, 중간 표현)로 컴파일하도록 변경했다.
- 추상 형태는 Erlang 컴파일러가 사용하는 메타데이터 주석이 달린 트리로, 이진 인코딩으로 직접 로드되어 Erlang 컴파일러의 전반부를 건너뛸 수 있다.
- 이 변경으로 컴파일러 성능이 크게 향상되어 빌드 시간이 대폭 단축되었으며, v1.17.0 대비 v1.19.0에서 벤치마크 프로젝트 컴파일 시간이 상당히 개선됐다.