Adhering to a programming style is a form of voluntary cargo cult programming. One adheres to a style to promote readability and maintainability through consistency. The style is not always completely appropriate in all circumstances, but that's a cost the adherant is willing to accept. As long as one knows when it's appropriate to break from the style, it's not cargo cult programming.
So the real question is whether the style was created with thought, or whether it was the result of cargo cult programming. In this case, there are merits to always using those switches.
-
x encourages readability, the addition of comments, etc. at little or no expense.
-
Using m intermittently requires more work on the reader's part to understand the meaning of ^ and $.
As to choosing whether to always use it or to never use it, using it adds two new instructions to your regexp library ("match start of line" and "match end of line") at some expense[*].
-
Using s intermittently requires more work on the reader's part to understand the meaning of ..
As to choosing whether to always use it or to never use it, using it adds a new instruction to your regexp library at little or no expense. Where it could do "match any character but \n" before, it can now easily do the same ([^\n]) plus "match any character" (.).
* — I consider having to use \A instead of ^ expensive (in terms of readability), but I already find $ dangerous to use in validation.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|