Our great sponsors
libskry_r | redgrep | |
---|---|---|
2 | 4 | |
16 | 150 | |
- | 0.7% | |
0.0 | 5.8 | |
over 3 years ago | about 2 months ago | |
Rust | C++ | |
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.
libskry_r
-
Rewrite the VP9 codec library in Rust
As already mentioned, bounds checks won't necessarily cause that much overhead. When I rewrote my small image processing library from C to Rust ([1]), I only had to use unchecked array access in one hot loop to get overall performance equivalent to C code.
[1] https://github.com/GreatAttractor/libskry_r
-
Speed of Rust vs. C
To practise Rust, I rewrote my small C99 library in it [1]. Performance is more or less the same, I only had to use unchecked array access in one small hot loop (details in README.md). I haven't ported multithreading yet, but I expect Rust's Rayon parallel iterators will likewise be comparable to OpenMP.
[1] https://github.com/GreatAttractor/libskry_r
redgrep
-
Show HN: Regex Derivatives (Brzozowski Derivatives)
I don't think Rust regex engine relies on this technique. I guess the main point is when you construct the DFA directly you still have the possibility of the exponential explosion of the number of states. That's why modern engines balance between NFA/DFA and lazy DFA.
Though there is an implementation that relies only on Brzozowski derivatives: https://github.com/google/redgrep
-
Introducing: Pomsky (formerly Rulex)
redgrep did it though: https://github.com/google/redgrep
- Redgrep – grep based on regex derivatives, matches in linear time
-
Speed of Rust vs. C
It couldn't figure it out from looking through ripgrep's website: does ripgrep support intersection and complement of expressions? Like eg https://github.com/google/redgrep does.
Regular languages are closed under those operations after all.
What are some alternatives?
smartstring - Compact inlined strings for Rust.
ixy-languages - A high-speed network driver written in C, Rust, C++, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python
fst - Represent large sets and maps compactly with finite state transducers.
rust - Rust for the xtensa architecture. Built in targets for the ESP32 and ESP8266
barre - A Regular Expression Library and CFG parser for Rust using Brzozski Derivatives
gccrs - GCC Front-End for Rust
ixy - A simple yet fast user space network driver for Intel 10 Gbit/s NICs written from scratch
linkify-it - Links recognition library with full unicode support