simdeez
swift-bridge
simdeez | swift-bridge | |
---|---|---|
3 | 16 | |
328 | 733 | |
- | - | |
5.4 | 7.0 | |
3 months ago | 11 days ago | |
Rust | Rust | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
simdeez
-
announcing pulp: a safe portable simd library
simdeez is unsafe https://docs.rs/simdeez/1.0.7/simdeez/trait.Simd.html , it's also unsound https://github.com/jackmott/simdeez/issues/47
-
Hey Rustaceans! Got a question? Ask here! (28/2022)!
Library | last commit to /src | remarks | |---|---| | sleef-sys | 4 years ago | Rust FFI Sleef bindings | | sleef-rs | 3 years ago | pure Rust port of Sleef | | faster | 4 years ago | No ARM support | | simdeez | 15 months ago | No ARM support (yet?) |
-
OctaSine, a FM-based VST2 synthesizer written in Rust
At some point, I decided that I wanted to accelerate the synthesis with SIMD. I started out with using packed_simd, but switched to simdeez to abstract over vector widths and enable runtime detection. However, I wanted more flexibility and the option of splitting SIMD code into multiple functions. My solution was to skip frameworks and instead use custom traits and the duplicate crate to abstract over Rust simd instrinsics for different instruction sets. I use sleef for fast sines.
swift-bridge
-
macOS Apps in Rust
A bit late, but `swift-bridge` (https://github.com/chinedufn/swift-bridge) does this intelligently, and is probably what you're looking for.
- swift-bridge 0.1.37 supports passing `Box<dyn FnOnce(A, B) -> C>` from Rust to Swift
-
Rust playground on iOS
4) Another route that I tried is to develop a simple terminal app using SwiftUI with a Xcode project to build that app + link against a Rust library compiled for iOS with the actual logic. I used swift-bridge for this and it works really well, to the point where I have a custom logger that you can simply use the print stuff to SwiftUI from Rust using the log crate. Once I have a bit more time, I will probably try figuring out how to clean this up a bit more.
-
Hey Rustaceans! Got a question? Ask here! (28/2022)!
Since Swift is your first target, I might recommend swift-bridge which can generate bindings for Rust async fns that Swift can call directly.
-
What's everyone working on this week (18/2022)?
I'm working on getting my GUI crate (https://github.com/audulus/rui) working on iOS (https://github.com/audulus/rui-ios). Multitouch will be fun. Shout out to the excellent work in swift-bridge: https://github.com/chinedufn/swift-bridge.
-
swift-bridge: type-safe interop between Swift and Rust
So that class SwiftString was actually unused. I've removed it here https://github.com/chinedufn/swift-bridge/pull/33 .
-
swift-bridge now supports calling async Rust functions from Swift
Here's an example of a Rust library that exposes an async function that uses reqwest to make an API call, and a main.swift that calls that async function.
-
Any good tutorials/examples on using a Rust library in Swift code for multiple targets?
Have you tried Swift Bridge? https://github.com/chinedufn/swift-bridge
- Swift-bridge: Call Rust from Swift and vice versa
What are some alternatives?
vst-rs - VST 2.4 API implementation in rust. Create plugins or hosts. Previously rust-vst on the RustDSP group.
swift - The Swift Programming Language
packed_simd - Portable Packed SIMD Vectors for Rust standard library
cxx - Safe interop between Rust and C++
duplicate - Easy code duplicate with substitution for Rust
repo
OctaSine - Frequency modulation synthesizer plugin (VST2, CLAP). Runs on macOS, Windows and Linux.
rust - Empowering everyone to build reliable and efficient software.
sleef-sys - Rust binding for SLEEF: SIMD Library for Evaluating Elementary Functions
config-rs - ⚙️ Layered configuration system for Rust applications (with strong support for 12-factor applications).
baseview - low-level window system interface for audio plugin UIs
rui - Declarative Rust UI library