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

First poster: bot
IHP is a modern batteries-included haskell web framework, built on top of Haskell and Nix. We believe that functional programing is the ...
New
First poster: bot
Pijul - The Mathematically Sound Version Control System Written in Rust. In this article, we’ll discuss Pijul - an alpha stage version c...
New
First poster: bot
Why is it called pie? Because if you pronounce API like “a pie”, then all this consuming and serving of APIs becomes a lot more palatabl...
/go
New
First poster: bot
Today’s the day: We’re very proud to announce Trussed®, an open source framework for modern cryptographic applications, which powers the ...
New
mudasobwa
Tarearbol provides a handy helper to work with many similar processes under the supervision of Tarearbol.DynamicManager. To build a supe...
New
finner
I thought it might be of interest to document some of the Java versioning tools that are available. Here is a very short list to start w...
New
First poster: bot
Preface Preface is an opinionated library designed to facilitate the handling of recurring functional programming idioms in OCaml. Many ...
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
fi_mihej
I’ve released “InterProcessPyObjects” Python package. It provides high-performance and seamless sharing and modification of Python object...
New
dhoelzgen
I am currently giving Cursor another try to code Elixir apps. Although I am quite happy with how it evolved, I kept getting annoyed by th...
New

Other popular topics Top

wolf4earth
@AstonJ prompted me to open this topic after I mentioned in the lockdown thread how I started to do a lot more for my fitness. https://f...
New
Exadra37
Please tell us what is your preferred monitor setup for programming(not gaming) and why you have chosen it. Does your monitor have eye p...
New
dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
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
There’s a whole world of custom keycaps out there that I didn’t know existed! Check out all of our Keycaps threads here: https://forum....
New
AstonJ
Do the test and post your score :nerd_face: :keyboard: If possible, please add info such as the keyboard you’re using, the layout (Qw...
New
rustkas
Intensively researching Erlang books and additional resources on it, I have found that the topic of using Regular Expressions is either c...
New
foxtrottwist
A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
New
AstonJ
If you want a quick and easy way to block any website on your Mac using Little Snitch simply… File > New Rule: And select Deny, O...
New
husaindevelop
Inside our android webview app, we are trying to paste the copied content from another app eg (notes) using navigator.clipboard.readtext ...
New