kirkjkrauss

kirkjkrauss

Matching Wildcards in Rust

I’m not the first developer to code a method dedicated to matching the classic ‘*’ and ‘?’ wildcards in Rust.  But I may be the first to code an all-logic algorithm for that purpose – in this case, an algorithm informed by performance and testcase suggestions from many folks in the C/C++ developer community,

All that was needed, algorithmically speaking, was a logic tweak to fit Rust-style text content.  The result: a pair of functions, one for matching wildcards in ASCII text (fast!), and another, based on the same algorithm, that’s UTF-8-ready.  The code is available on GitHub.

Though the original C/C++ code works only for ASCII text strings, Rust has made a UTF-8-enabled implementation as simple as using a built-in data type.  New UTF-8 testcases are provided with the Rust code.  A description of the algorithm’s history, the process of converting it to Rust, some philosophy legitimizing the conditional logic approach, and the development of the UTF-8 testcases, all appear at developforperfromance.com.

Where Next?

Popular Backend topics Top

New
New
First poster: bot
A set of utility functions for iterators, functions, and dictionaries. See the PyToolz documentation at https://toolz.readthedocs.io ...
New
First poster: bot
:gem: Artichoke Ruby is a modular Ruby implementation written in Rust. Artichoke is made up of several Rust libraries, called crates, whi...
New
OrlaghNeary
First time posting here and disclaimer, I work with Microsoft! I partner with Microsoft Research and there are so many cool projects unde...
New
First poster: bot
Turn (almost) any Python command line program into a full GUI application with one line
New
CommunityNews
Rhizome is a paedagogical just-in-time compiler (JIT) for Ruby, implemented in pure Ruby. It’s not really designed to be used. It’s desig...
New
First poster: bot
Check if an email address exists without sending any email, written in Rust.
New
First poster: GermaVinsmoke
This guide collects some of the most common functions of the Elixir Programming Language and explain them conceptual and graphically in a...
New
zb16601128171
I am ZhangBo, the developer of EasyDown. I wanted to share the boundary I use for this project: a video downloader API should explain a p...
New

Other popular topics Top

AstonJ
Or looking forward to? :nerd_face:
503 15149 280
New
brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
AstonJ
This looks like a stunning keycap set :orange_heart: A LEGENDARY KEYBOARD LIVES ON When you bought an Apple Macintosh computer in the e...
New
PragmaticBookshelf
Build highly interactive applications without ever leaving Elixir, the way the experts do. Let LiveView take care of performance, scalabi...
New
DevotionGeo
The V Programming Language Simple language for building maintainable programs V is already mentioned couple of times in the forum, but I...
New
PragmaticBookshelf
Use WebRTC to build web applications that stream media and data in real time directly from one user to another, all in the browser. ...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
PragmaticBookshelf
Overarching tutorial for Python beginner and intermediate developers that teaches web development with the Flask framework. Miguel Gr...
New
PragmaticBookshelf
Write elegant Ruby code—not just correct, but idiomatic. Go beyond the vocabulary and syntax and learn to express yourself with eloquence...
New
xiji2646-netizen
There’s a GitHub repo at forrestchang/andrej-karpathy-skills that’s sitting at 97.8k stars. It’s a single CLAUDE.md file with four behavi...
New