idiom goes beyond syntactical or structural form.
Here are two definitions from the OED (the second
and third major ones; using the 1971 compact
edition):
- the specific character, property, or genius of any
language; the manner of expression which is
natural or peculiar to it.
- a form of expression, grammatical construction,
phrase, etc., peculiar to a language; a
peculiarity of phraseology approved by the usage
of a language, and often having a significance
other than its grammatical or logical one
The first definition there, applied to Perl, might
be things like using $_ and @_ to write concisely
(Effective Perl Programming item 7). The second
definition would mean things like
while (<FH>) { do_stuff } (although
technically that is approved by the design, rather
than the usage, of the language) or perhaps things
like naming conventions. A non-Perl example would
be Hungarian Notation in C++. The Perl community
has things like that too.
Stuff like the Schwartzian
Transform could be considered idiomatic also,
or the practice of returning undef for false
(which, incidentally, will change in Perl6).
for(unpack("C*",'GGGG?GGGG?O__\?WccW?{GCw?Wcc{?Wcc~?Wcc{?~cc'
.'W?')){$j=$_-63;++$a;for$p(0..7){$h[$p][$a]=$j%2;$j/=2}}for$
p(0..7){for$a(1..45){$_=($h[$p-1][$a])?'#':' ';print}print$/}
-
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.
|