Comments (9)
@josuesantos1 sure!
from firefly.
I'll let @bitwalker weigh in on that
from firefly.
@hailelagi we'd welcome all contributions! @KronicDeth would be the best best to weigh in on this ticked I think
from firefly.
I see, thanks for the heads up! For now, I'd be fine with trying the library approach, and eventually when the runtime api is stable, doing a re-write, I don't mind honestly and looking forward to it :)
from firefly.
can i make this issue?
from firefly.
@ josuesantos1 com certeza!
I can call rets? (Rust-ets)
Can I change one thing or the other or does it need to be 100% equal to ets?
from firefly.
hi there! 👋🏽
I've been looking at lumen for a while, really great project! I wonder is the work on this issue still desired? If so I would love to take a stab at it, I've been actively learning rust and I'm fairly confident in my elixir - it might take me a few weeks but I'm pretty sure I can crack it. Thanks!
cc: @bitwalker , @bcardarella
from firefly.
@hailelagi There are a few things we need to get sorted internally with the runtime before we'll be ready to implement ETS, but I'm working hard to get that stuff done as soon as possible. I'll ping you here as soon as we're ready to begin implementation, and I'd be happy to let you work on that :).
The main outstanding things I'm working out are how runtime functions need to integrate with the garbage collector, and additionally how runtime functions should be written to support yielding during expensive operations. Both of those are tricky in Rust, so I'm researching an approach via async Rust that ideally will provide a uniform solution to both of those questions. The trouble with going too far with implementation until those are pinned down, is that they will have a very significant impact on the APIs and implementation of their functionality, so it's not really worth going too deep on it until then.
That said, if you wanted to take a crack at a standalone implementation of ETS in Rust, and then work on integrating that into the runtime once we're ready, that might be a viable approach for development - but I suspect that there will be so many runtime-specific idiosyncracies that you'd largely end up reimplementing most of it anyway.
from firefly.
See #8 as well
from firefly.
Related Issues (20)
- CMake >= 3.20 not supported HOT 1
- offset_of HOT 2
- Krustlet Provider HOT 2
- Build errors ^^^^^^^^ feature has been removed
- Project Status HOT 10
- Need help for applying lumen
- GraalVM HOT 2
- can't build lumen on linux using the latest nightly nor nightly-2022-07-12 HOT 3
- Write page explaining change from lumen to firefly. HOT 3
- Build errors ^^^^^^^^ use of unstable library feature 'core_c_str' HOT 2
- Docker images of working Firefly installation Please HOT 3
- `firefly compile` fails during linking due to undefined reference to `init:boot/1` HOT 3
- Compiler will get segmentation fault for some kinds of `when` clauses on function HOT 1
- Some arithmetic expressions will not compile with error: failed to legalize operation 'cir.cast' HOT 1
- Overflow on a small integer causes a runtime error: `ImmediateOutOfRangeError`
- Error running example module on M1 HOT 1
- When will a precompiled toolchain package be available? HOT 2
- Can't build from source on develop HOT 2
- Elixir example? HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from firefly.