rure-go
gomakeme
rure-go | gomakeme | |
---|---|---|
2 | 1 | |
247 | 10 | |
- | - | |
3.0 | 3.2 | |
5 months ago | about 2 years ago | |
Go | Go | |
The Unlicense | MIT License |
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.
rure-go
-
Best regexp alternative for Go. Benchmarks. Plots.
rure-go (regex 1.9.3) - uses the Rust regex engine with CGo bindings. The downside is a Rust library dependency that needs to be compiled;
-
Go performance from version 1.2 to 1.18
Totally agreed: almost all users (me/GoAWK included) want performance and don't care nearly as much about simplicity under the hood. Simplicity of implementation is of value for educational purposes, but we could easily have a small, simple 3rd party package for that. Go's regexp package is kinda too complex for a simple educational demonstration and too simple to be fast. :-)
I actually tried BurntSushi's https://github.com/BurntSushi/rure-go (bindings to Rust's regex engine) with GoAWK and it made regex handling 4-5x as fast for many regexes, despite the CGo overhead. However, rure-go (and CGo in general) is a bit painful to build, so I'm not going to use that. Maybe I'll create a branch for speed freaks who want it.
I've also thought of using https://gitlab.com/cznic/ccgo to convert Mawk's fast regex engine to Go source and see how that performs. Maybe on the next rainy day...
gomakeme
-
Go performance from version 1.2 to 1.18
I wrote a REST API / boilerplate reducing codegen tool for this exact reason for the Go Fiber framework. Maybe might help.
https://github.com/tompston/gomakeme
What are some alternatives?
ccgo
go - The Go programming language
regex-benchmark - It's just a simple regex benchmark of different programming languages.
regexp - Faster version of the Go regexp package
hyperscan - High-performance regular expression matching library
go-carbon - An unofficial REST API for the Carbon project written in Go
gohs - GoLang Binding of HyperScan https://www.hyperscan.io/
gostart - Starter pack for Go Fiber
Sqinn-Go - Golang SQLite without cgo
esqueleto - Bare bones, type-safe EDSL for SQL queries on persistent backends.