4 ms·
Thanks for replying! I'm explicitly challenging the claim 'Python has one of the best [standard regular expression core library] of all dynamic languages'. Its
by falsedan 9y ago
Thanks for replying! I'm explicitly challenging the claim 'Python has one of the best [standard regular expression core library] of all dynamic languages'. Its regular expression support is not as good as Perl's, for features and speed. Ruby's support is roughly equivalent to Perl's, and JavaScript's is roughly the same as Python's. PHP's suffers from a clunky interface but is competitive on features+speed.
If we open the floor to all languages, clearly lex/yacc is the winner w.r.t. writing a scanner. There's little difference between Python's and Java's support, and Boost::Regex makes PHP look good in comparison.
Can you go into more detail for:
> That's not how the "No true Scotsman" fallacy works.
Here's how I think it would go:
1> Perl has better regex support than Python
2> Well Python has a scanner built into the standard library, and thus can't be compared to languages which do not have that feature.
1> … but writing a scanner with the standard regex support in these languages is trivial
2> Doesn't matter, it's built-in and thus those languages aren't comparable.
> there are better regex engines for non-dynamic languages, he still thinks Python has the better regex engine among the dynamic ones
Why does that matter? It feels exclusionary: in this narrowly-defined group, the choice I prefer has the best features. Did they mean, "of the languages I am familiar with, I've most enjoyed using regexes in Python"? That's a far more honest claim.
> It's a casual phrase in a blog post, not some huge marketing / FUD conspiracy that needs to be explained.
Communication is done every day, everywhere. These blog posts influence peoples' opinions, and (more importantly) influence their approach to writing. I want more articles to be balanced, honest, and informative, not rah-rah puff pieces.
- coldtea 9y ago>Here's how I think it would go "A True Scotsman" might go like that, but here was no step (1). The True Scotsman is all about the extra constraints added in the transition of (1) to (2). If one starts at 2 (no prior discussion), they can define whatever they want as essential attributes for a Scotsman. They may be wrong in what they list, but they are not making a N-T-S fallacy. >Why does that matter? Because the post is aimed (by its author) at people using dynamic languages. If I want to do some regex work, and mostly program in dynamic languages (or have found that dynamic languages fit my project better, etc.), then I just need to see an evaluation of regex engine across dynamic languages -- I don't care where C++ or Haskell regex engines might have more features. In other words, it's about what constraints people put in searching for a language/lib to use. Some people place the constraint "must be in a dynamic language" higher than "must be better overall" when they search for a lib/framework (in our case, a regex engine). >Communication is done every day, everywhere. These blog posts influence peoples' opinions, and (more importantly) influence their approach to writing. I want more articles to be balanced, honest, and informative, not rah-rah puff pieces. Maybe, but between marketing, hidden sponsored posts, fake news and crappy/agenda-driven "real" news, I wouldn't start from Armin's blog :-)
- falsedan 9y agoOh, I meant that the counter-argument would use "No true Scotsman", not that the article did. > Maybe, but between marketing, hidden sponsored posts, fake news and crappy/agenda-driven "real" news, I wouldn't start from Armin's blog :-) I think I can comment on this article, and that the few HN commentators here will see it, and my message will certainly reach a small audience. For those relatively larger problem, I don't have access to a suitable medium or audience and thus, even though the privation is greater, I would reach zero people.