Initial Rust Binding Experiment by Shixin

I asked Shixin if he would put a bit of his initial binding experimentation for Rust that he did last year on GitHub so we (though mostly I, I'll assume) could look at it. So he did:

While I don't know too much about Rust, the people who use it (including Shixin) seem to like it a lot. I do know that I've seen a lot of activity surrounding it. The concept is that people targeting WebAssembly would pick something with new safety properties and "friendlier syntax" to compile from than C++.

Looking at the source for the binding lib(r3).rs, you notice the usual suspects. I note that there's let, and the if/else patterns that Ren-C has been trying to find ways to be able to bend to (if you want!)

When I get a chance I'll be trying to build it and run the Fibonacci test which is living in the lib.rs at the moment. (It seems he was just focusing on the nuts-and-bolts of "can I call Rebol at all" vs. doing variadic tricks.) On the off chance that anyone wants to take a crack at seeing if it runs before I do, I thought I'd point it out--though.

As a compiled language without homoiconicity, Rust is not a direct competitor. But with Ren-C able to build as Wasm too, this is interesting...especially with the UTF-8 Everywhere ethos being embraced by both languages. I've suggested there might be a chance that with good binding, we could play a sort of "JavaScript to Rust's Java" role...being the interpreted and light language which doesn't need a compiler that you call over to, but having a sort of from-scratch redesign that is revolutionary enough in paradigm to oust JavaScript from keeping that title again.

Anyway, I'm posting it here to keep track of it and any follow-ups...

2 Likes