Re:Ruffle: Flash Player Emulator
by teaearlgraycold on Monday October 23, 2023 @01:13AM
(#37981871)
Couldn’t you just have a global object table and make your pointers indexes into this, using Rc::Refcells throughout? Rust is still fast with runtime GC.
More specifically (assuming we’re talking about the same thing), the issue is with reproducing a standard C++ inheritance hierarchy (used for both the AS2/3 native objects and for the „DOM” tree nodes), while keeping its overhead characteristics, devirtualisation opportunities, having it interact with our GC and borrow checker and still have a convenient, safe Rust API on top. Our current solution works, but has deficiencies in most of these aspects.
I suspect at least one of the developers would argue with you as I have listened to his rants. :)
Rust is a remarkably poor match to implementing Flash because Flash has lots of object orientation with child and parent pointers--which Rust really hates.
> Rust also attracts good developers in general, moreso than the average language certainly.
I suspect this is way more relevant.