Hacker News new | ask | show | jobs
Lisp in the Rust Type System (github.com)
116 points by quasigloam 3 days ago
5 comments

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?
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.
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!)
(Self plug) There’s also a lisp in the decl macro system directly: https://github.com/RyanWelly/lisp-in-rs-macros
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?
Not the parent poster, but I'm curious why you think this? the comment seems reasonable and makes sense, your LLM detector might be more finely tuned then mine...
The sentence structures they use are always the same. Plus, the use of "real" here is "real" awkward and LLMs use it like that all the time.
I've proposed this a few times, as someone whose second language is English, I can see people learning English with AI, same with teens in school. I used spellcheck in Firefox (back in the mid 2000s) to teach myself how to spell more words instead of just relying on it and forgetting about the corrections.

We are and will reach a point where more and more people speak like, and sound like AI talks. The assumptions that something is AI are going to become really useless without further evidence.

"Here is the X part", a commonly generated attention catcher these days, combined with an expert level fact, compacted into casual tone. Note it does not state opinion or reports subjective experience, which alltogether makes it a somewhat unfailable "Did you know?" addition. It is easy to mass generate such commentary and you can frequently find it on Twitter, too.

I find it hard to believe that a human would after reading this article make the stated observation, and then write this exact comment.

Looking at the history it looks like a bot.

- quite young account

- all comments are roughly the same size

- only top level comments, never reply to other comments

Some people have AI fatigue, I have "this is AI" when nothing says it is fatigue, that and "this is slop!" without looking at it and judging it by the output fatigue.
The problem is that we can no longer trust whether something we're reading is an actual thought that someone had, or if it's copy-pasted garbage that's put there for internet points. The extra effort that comes from that decision is what causes the fatigue.

The internet was low-trust before, and now it's zero-trust.

That's the thing though, you say copy pasted garbage based on what? What if its impeccable code, some of the best you've ever read, has zero bugs, but then you find out just before downloading it, that AI was used for it. Do you throw it all away as slop? You don't even know how much was done by AI by this point mind you, what if it was very little, what about half? What if all of it was AI, 100% of it, but you didn't even notice before, so where's the bar? Are we after quality or just "a human must have spent hours for me to use the code" which is it? Because for me it's just is it reasonable quality? Then I'll use it. In fact, I use things I "vibe coded" for myself everyday, rarely finding bugs.
This is impressive! I'm supposed to do work today, but now I just want to play with this thing
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.