> "But I don't think they address the problem inherent in Frak - there's no way to insure that the expression gives the intended result against an arbitrary input." I've made sure to thoroughly test the patterns…
> "But that's what a regular expression is used for - testing an arbitrary string for membership within the set of valid strings of the language formally described by the regular expression." Formally yes. And if it…
Apparently the Perl community has been doing this for years. :)
This is an excellent use case.
I would not use this as a replacement to test the membership of a string in a collection of strings. That's a terrible use case. I've done benchmarks comparing membership checking and regular expression testing and the…
This isn't something I would recommend using for everyone. But it does have use cases that make it appealing and useful. The same thing could be said about VerbalExpressions. While it's true `[:alpha:]|[:lower:]` (even…
These expansions are certainly possible and I'm planning to investigate whether they have performance benefits. One interesting discovery we made last weeks is that `(a|b|c)` actually produces a larger state table than…
On it's way this week. See the reply above.
There will be a JavaScript version available this later week, both for nodejs and the browser. If you want to try out the command line version see issue #2 for instructions.
Actually, frak doesn't generate patterns that require an exact match. I use Clojure's `re-matches` function (for exact matches) in the example and the tests to show and ensure the generated patterns work as expected.…
Isn't that more or less the same as what it already does? That is by telling frak which words you want to match you're implying you don't want to match anything else. Of course, you could generate two patterns; one with…
Because that's not why I wrote frak. Originally, I wrote it to help eliminate backtracking and, indirectly, minimize the state table of two enormous regular expressions within Vim's Clojure syntax file (the README has a…
This is interesting. Thank you for sharing the link to this paper. At the moment I believe I have something that looks similar Figure 1, however, the algorithm is nothing to write home about. I wrote the initial version…
> "But I don't think they address the problem inherent in Frak - there's no way to insure that the expression gives the intended result against an arbitrary input." I've made sure to thoroughly test the patterns…
> "But that's what a regular expression is used for - testing an arbitrary string for membership within the set of valid strings of the language formally described by the regular expression." Formally yes. And if it…
Apparently the Perl community has been doing this for years. :)
This is an excellent use case.
I would not use this as a replacement to test the membership of a string in a collection of strings. That's a terrible use case. I've done benchmarks comparing membership checking and regular expression testing and the…
This isn't something I would recommend using for everyone. But it does have use cases that make it appealing and useful. The same thing could be said about VerbalExpressions. While it's true `[:alpha:]|[:lower:]` (even…
These expansions are certainly possible and I'm planning to investigate whether they have performance benefits. One interesting discovery we made last weeks is that `(a|b|c)` actually produces a larger state table than…
On it's way this week. See the reply above.
There will be a JavaScript version available this later week, both for nodejs and the browser. If you want to try out the command line version see issue #2 for instructions.
Actually, frak doesn't generate patterns that require an exact match. I use Clojure's `re-matches` function (for exact matches) in the example and the tests to show and ensure the generated patterns work as expected.…
Isn't that more or less the same as what it already does? That is by telling frak which words you want to match you're implying you don't want to match anything else. Of course, you could generate two patterns; one with…
Because that's not why I wrote frak. Originally, I wrote it to help eliminate backtracking and, indirectly, minimize the state table of two enormous regular expressions within Vim's Clojure syntax file (the README has a…
This is interesting. Thank you for sharing the link to this paper. At the moment I believe I have something that looks similar Figure 1, however, the algorithm is nothing to write home about. I wrote the initial version…