Content deleted Content added
→History: Changed citation that is dead to use an archive of that page. |
Jnestorius (talk | contribs) |
||
Line 2:
== History ==
The algorithm is based on a history of development, correctness and performance testing, and programmer feedback that began with an unsuccessful search for a reliable non-recursive algorithm for matching wildcards. An initial algorithm, implemented in a single while loop, quickly prompted comments from software developers, leading to improvements.<ref>{{cite magazine |last=Krauss |first=Kirk |date=August 26, 2008 |year= |title=Matching Wildcards: An Algorithm |url=http://www.drdobbs.com/architecture-and-design/matching-wildcards-an-algorithm/210200888 |url-status=dead |archive-url=https://web.archive.org/web/20241204085600/https://www.drdobbs.com/architecture-and-design/matching-wildcards-an-algorithm/210200888 |archive-date=4 December 2024 |magazine=[[Dr. Dobb's Journal]]}}</ref> Ongoing comments and suggestions<ref>{{cite web| title=wild card searching| publisher=alt.os.development| year=2008| url=https://groups.google.com/forum/#!topic/alt.os.development/8-rIaarASu8}}</ref><ref>{{cite web| last=T.J.| title=wild card matching in text string| year=2014| publisher=Stack Overflow| url=https://stackoverflow.com/questions/21409588/wild-card-matching-in-text-string}}</ref> culminated in a revised algorithm still implemented in a single while loop but refined based on a collection of [[test case (software)|test case]]s and a [[profiling (computer programming)|performance profiler]].<ref>{{cite magazine| last=Krauss| first=Kirk| title=Matching Wildcards: An Empirical Way to Tame an Algorithm| magazine=[[Dr. Dobb's Journal]]| year=2014| url=http://www.drdobbs.com/architecture-and-design/matching-wildcards-an-empirical-way-to-t/240169123}}</ref> The experience tuning the single while loop using the profiler prompted development of a two-loop strategy that achieved further performance gains, particularly in situations involving empty input strings or input containing no wildcard characters.<ref>{{cite web| last=Krauss| first=Kirk| title=Matching Wildcards: An Improved Algorithm for Big Data| publisher=Develop for Performance| year=2018| url=http://www.developforperformance.com/MatchingWildcards_AnImprovedAlgorithmForBigData.html}}</ref> The two-loop algorithm is available for use by the [[open-source software]] development community, under the terms of the [[Apache License]] v. 2.0, and is accompanied by test case code.
== Usage ==
|