경량 Lisp 계열 프로그래밍 언어 Janet(자넷)이 1.42.0 버전을 공개했습니다. 이번 릴리스는 런타임 안정성을 대폭 강화하고, 개발자 경험을 개선하기 위한 광범위한 문서 개편 및 개발 도구 보강에 초점을 맞췄습니다. 특히 메모리 관리와 비동기 실행 관련 치명적인 버그들이 수정되어 더욱 견고한 애플리케이션 개발이 가능해질 전망입니다.
주요 변경 사항으로는 중첩된 `janet_continue` 실행 시 활성 파이버(fiber)가 가비지 컬렉션(GC)되는 오류, 메모리 재할당 후 스택 포인터 무효화 문제, 이벤트 처리의 이중 해제 등 메모리 및 동시성 결함 수정이 포함됩니다. 또한, `janet_channel_make_threaded`의 반환값 오류를 바로잡고 스트림 종료 시 이벤트 등록 해제를 개선하여 비동기 실행의 안정성을 높였습니다. 개발 편의성 측면에서는 `janet` 명령에 Bash, Zsh, Fish 셸 자동완성 기능이 추가되었고, 디스어셈블러(`disasm`) 기능 개선 및 8비트 정수, 부동 소수점(float) 값에 대한 게터(getter)가 추가되었습니다. 문서화 측면에서는 표준 함수의 독스트링(docstring)과 테스트가 정비되었으며, 퍼징(fuzzing) 대상이 확대되어 잠재적 결함 탐지 범위가 넓어졌습니다.
이번 Janet 1.42.0 릴리스는 언어의 핵심 안정성을 다지고 개발자들이 더욱 효율적으로 작업할 수 있는 환경을 제공한다는 점에서 의미가 큽니다. 특히 런타임 안정성 개선은 Janet을 활용한 실제 서비스 개발에 있어 신뢰도를 높여줄 것이며, 셸 자동완성 같은 개발 도구 개선은 신규 사용자 유입과 기존 사용자의 생산성 향상에 기여할 것입니다. 다만, 사용자들 사이에서는 여전히 문서의 일관성과 최신 정보 유지에 대한 아쉬움이 제기되고 있어, 향후 지속적인 개선이 필요할 것으로 보입니다. Janet은 코드 컴파일 시점과 실행 시점의 구분이 모호하여 번들러(bundler) 기능 등을 자연스럽게 얻을 수 있다는 장점으로 1인 개발자들 사이에서 주목받고 있습니다.