-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds a Ruby backend #84
base: develop
Are you sure you want to change the base?
Conversation
Whoa!!!!!! I'm absolutely ecstatic. You've written almost half of our backends now!!! As an outsider who has implemented Oak for multiple targets, what are some of the strange bugs that you see sometimes while developing a backend? Is the backend code easy to port? What's been your overall experience with implementing the typescript and ruby backends? |
TypeScript and Ruby were both fairly easy to implement. The hardest part of both was implementing the The most annoying part of the process is having to modify multiple Rust files to add a new backend. In bin.rs, you have to add in the I also started work on a Python backend, but quickly hit a dead end. Because of the way that |
Thats good to hear!! Also, with respect to the Python backend, you could use a |
I'll give that a shot! |
So the |
It is indeed 'unsafe' but that is just because Rust wants to be able to reason about the variables and its access in a multithreading environment. You can wrap code using this value in |
The problem is you can't use unsafe code in a safe function. Unless I'm missing something, which is not unlikely, introducing this one piece of unsafe code would cause a decent chunk of the program to be unsafe just to use it. |
You can look at this commit kevinramharak@c1727cb#diff-a0d44f3f45a877f81e862f4806d19f4c7b8f026afd68f98e5a1eb74b0a6f71ca to see how I used to use static without having to mark whole functions as unsafe. |
No description provided.