Rust로 구현한 Clojure 방언 clj.rs 공개, crates.io 배포와 브라우저 REPL 제공
- Rust 생태계를 겨냥한 실험적 Clojure 방언 cljrs가 crates.io에 배포됨. 영속 데이터 구조, 호스티드 매크로 시스템, 네이티브 interop을 갖춘 Lisp 런타임이 목표이며 컴파일과 인터프리트 방식을 모두 지원함.
- 브라우저에서 바로 실행해볼 수 있는 REPL(clj.rs/repl)과 언어 레퍼런스(docs.clj.rs), 개발 로그(log.clj.rs)를 함께 공개함. 소스 저장소는 github.com/csm/clojurust임.
- 제작자가 스스로 초기 단계라고 밝히며 거친 부분이 있을 것이라고 안내함. 에이전트 코딩 런타임으로 쓰는 상황을 염두에 둔 대상임.
- 해커뉴스에서는 non-goal이 무엇인지, Jank 같은 다른 Clojure 구현과 어떻게 다른지 비교를 요구하는 반응이 나옴.
Hacker News opinions
좋긴 한데 non-goal이 뭐임? 네이티브 바이너리 컴파일 빼면 Clojure보다 ClojureScript에 가까운 거 같은데. Jank랑 비교하면 어떤지도 궁금하고.
난 scheme-rs 크레이트 팬이라 동적 스크립팅 언어가 필요할 때마다 씀. 프로그램 일부를 유연하게 핫리로딩할 수 있어서 좋더라. Clojure interop에서 딱히 아쉬운 구멍은 없는데, 더 빠른 시작이나 더 가벼운 컨테이너 이미지 때문에 JVM에서 조금씩 벗어나는 미래는 상상됨.
scheme이랑 rust 둘 다 좋아하면서 scheme-rs는 몰랐네. 좋은 프로젝트 같다, 알려줘서 고마움.
나도 비슷한 걸 만드는 중인데 3~5년 안에 ALGOL 계열 언어 대부분이 사라지고 S-표현 Lisp 방언이 대체할 거라고 봄. 컴파일러 파이프라인 전체를 Lisp에서 제어할 수 있고 C/C++/Rust와 1:1로 대응됨.
왜 하필 지금 S-표현에 그렇게 낙관적인지 궁금함. 매크로니 코드를 짧게 표현하는 능력이니 하는 건 오히려 사라지기 가장 가까운 개념 아닌가? 이미지 기반 개발, 상태 계속 들여다보기, 핫스왑, REPL 같은 나머지 절반이 LLM 시대에도 통하는 부분 같은데.
2년 안에 이게 대세가 될 거라고 봄. 잘 만들었네.
대세가 정확히 뭘 대체한다는 거임? 자바 생태계? 자바스크립트 생태계? C++? 아니면 Clojure 비슷한 방언?
Clojure가 이제 Lisp 계열 언어의 새 기반이 된 건가? 최근에 Jank 발표도 봤는데 관심이 생김.
해시 테이블 리터럴이 크고, 호스트 언어 위에서 사는 걸 원래 철학으로 삼아서 그럼. C++이나 Rust 위에 Lisp을 얹으려면 Common Lisp 진영보다 Clojure 쪽과 훨씬 잘 맞음.