brundonsmith / rust_lisp

A Rust-embeddable Lisp, with support for interop with native Rust functions
234 stars 20 forks source link

added ,@ (comma splice) operation #35

Open rpcesar opened 1 year ago

rpcesar commented 1 year ago

I want to express my appreciation for this project. Although I'm not entirely sure about its current maintenance status, I believe it serves as a fantastic starting point.

While exploring the project, I encountered an issue with creating macros due to the lack of a comma-splice operation. This limitation significantly hampers the language's utility as a metalanguage. To address this, I've implemented the comma-splice operation as a unique special form in a manner that allows for the creation of macros. However, I acknowledge that this implementation does have some performance implications as it involves chunking data into vectors at a specific point. I plan to continue refining this implementation, should time permit.

Given the broadened possibilities that the comma-splice operation brings to the language and its potential to open up numerous use cases, I am submitting this pull request. I understand that further improvements can be made, and I'm open to any feedback or guidance to enhance the feature.

brundonsmith commented 1 year ago

Hi!

The project's status is that I don't do much with it these days, however I always love to hear from people who use it/like it enough to file a ticket, so I can often be convinced to add a feature or fix a bug when somebody's requested it

I can't make any promises, but I'll see about maybe adding this feature 🙂