3 ms·
> Rust's type system encodes more information than most languages, and so you can offload more work to it. I suspect at least one of the developers would argue
by bsder 3y ago
> Rust's type system encodes more information than most languages, and so you can offload more work to it.
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.
- teaearlgraycold 3y agoCouldn’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.
- adrian17 3y agoMore 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.
- pcwalton 3y agoI suspect that it's two things: (1) the relatively good support for Wasm in Rust; (2) the Cargo ecosystem. In the case of Ruffle, the combination of the two seems particularly effective.