#!/usr/bin/perl -pa
$_ = "$F[0] $F[-2]\n";
What does that Perl code do?
Although it's very short, it's also somewhat obscure, and my delegates yesterday were not at all sure that they would wish to be given code like this to maintain ... but then they admitted that they
have seen things like this around ...
There are some Perl programmers who take what I feel is a perverse delight in writing their code as short as possible, even to the extent that it looses clarity; for sure, you should make good use of the Perl language and its facilities to avoid needless loops - use a
grep in place of a
foreach loop with a regular expression check and a
push, and slurp a file into a list by all means rather that reading in through a
while loop - but the above takes it just too far!
Oh - I asked you what it does, didn't I? It reads the file named on the command line in line by line, and prints out the first and next-to-last field on each line, throwing away the rest of the data.
(written 2008-07-30)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
P711 - An Introduction to Standards in Perl [242] Satisfaction of training - (2005-03-11)
[668] Python - block insets help with documentation - (2006-04-04)
[743] How to debug a Perl program - (2006-06-04)
[945] Code quality counts - (2006-11-26)
[965] KISS - one action per statement please - Perl - (2006-12-05)
[1047] Maintainable code - some positive advice - (2007-01-21)
[1221] Bathtubs and pecking birds - (2007-06-07)
[1345] Perl and Shell coding standards / costs of an IT project - (2007-09-11)
[1395] Dont just convert to Perl - re-engineer! - (2007-10-18)
[1555] Advanced Python, Perl, PHP and Tcl training courses / classes - (2008-02-25)
[1853] Well structured coding in Perl - (2008-10-24)
[1863] About dieing and exiting in Perl - (2008-11-01)
[2375] Designing your data structures for a robust Perl application - (2009-08-25)
[2688] Security considerations in programming - what do we teach? - (2010-03-22)
[2875] A long day in Melksham ... - (2010-07-17)
[3398] Perl - making best use of the flexibility, but also using good coding standards - (2011-08-19)
[4326] Learning to program - comments, documentation and test code - (2014-11-22)
P210 - Perl - Topicalization and Special Variables [493] Running a Perl script within a PHP page - (2005-11-12)
[639] Progress bars and other dynamic reports - (2006-03-09)
[969] Perl - $_ and @_ - (2006-12-07)
[1136] Buffering output - why it is done and issues raised in Tcl, Perl, Python and PHP - (2007-04-06)
[1232] Bathtub example - (2007-06-14)
[1289] Pure Perl - (2007-08-03)
[1444] Using English can slow you right down! - (2007-11-25)
[1508] How not to write Perl? - (2008-01-15)
[1704] Finding operating system settings in Perl - (2008-07-10)
[1705] Environment variables in Perl / use Env - (2008-07-11)
[1829] Dont bother to write a Perl program - (2008-10-10)
[1860] Seven new intermediate Perl examples - (2008-10-30)
[1922] Flurinci knows Raby Lae PHP and Jeve - (2008-12-04)
[2833] Fresh Perl Teaching Examples - part 2 of 3 - (2010-06-27)
[2876] Different perl examples - some corners I rarely explore - (2010-07-18)
[2972] Some more advanced Perl examples from a recent course - (2010-09-27)
[3449] Apache Internal Dummy Connection - what is it and what should I do with it? - (2011-09-19)
[4301] Perl - still a very effective language indeed for extracting and reporting - (2014-09-20)
[4395] Preparing data through a little bit of Perl - (2015-01-15)
[4682] One line scripts - Awk, Perl and Ruby - (2016-05-20)
[4700] Obfurscated code - it might work, but is it maintainable? - (2016-07-02)
Some other Articles
Old pictures and comparisonsApache httpd, MySQL, PHP - installation procedurePunting on the CamBack from the futureA short Perl exampleEquality and looks like tests - PerlHot Courses - PerlA future vision for Melkshamaddslashes v mysql_real_escape_string in PHPBath - Melksham - Devizes. Bus route changes, new timetable