Join the discussion
Write your take first — we'll ask for email only when you're ready to publish.
- Hacker News
- I'm honestly a bit shocked this was done entirely using declarative macros. Normally when I see such arbitrary syntax I assume it's implemented as a proc macro.by CupricTea
- This is impressive! I'm supposed to do work today, but now I just want to play with this thing
- call/ec at the type level is the surprising part here, most compile-time Lisp implementations stop at basic eval but escape continuations need real control flow reasoning through trait resolution
- did you generate this comment?by lgrapenthin
- I was surprised but pleased to see this was a declarative macro rather than a proc macro. While proc macros are more powerful, there's a surprising amount of expressive power in the declarative ones, and I'm fond of playing around with them to figure out how to stretch them beyond where it seems like they should be able to get (and maybe shouldn't be used for in real code, but that doesn't make it less fun for playing around!)by saghm
- (Self plug) There’s also a lisp in the decl macro system directly: https://github.com/RyanWelly/lisp-in-rs-macrosby quasigloam
- That is incredible, but I must ask: Beside really getting to know Rust's trait and type system, and besides experimental / educational tinkering, could this have any practical use case?by wuschel
- If this could somehow be used to implement proc macros in lisp instead of rust, I'd be very interested in exploring real use cases. But from my limited understanding of how it works, it seems not.by mtlmtlmtlmtl