Sponsored Content
Full Discussion: One liners, quick rant...
The Lounge What is on Your Mind? One liners, quick rant... Post 302977435 by rbatte1 on Monday 18th of July 2016 06:45:03 AM
Old 07-18-2016
I've learned the hard way that compressing my code to the extreme just confuses myself when I need to change it. Do I really want 2 hours of extricating myself for a few extra lines of clear code that cost no noticeable time.

There is a case for a one-liner if you can get a tool such as awk to do several things at once rather than calling a loop with multiple greps or cuts being called within it. For me it comes down to using it for processing efficiency. Even if I can make my code fit into fewer blocks on disk, it's just not worth it. If I do, then it gets an explicit comment, often with example code it is logically replacing. If I can adjust it in future in a longer method, then conversion would be simpler if I get my requirements clearer first.

It's the same with debugging logs for batch programs - write lots of info to the log so that when there is a problem, the trace is there. Just make sure you clean up old logs after a short time to avoid running out of space. It's far better than trying to trace or reproduce an error, potentially altering your data for the worse on each attempt or having to put trace information in when an error occurs and you are bleary-eyed.



Robin
 

4 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Where can I rant?

First of all, apologies to the admins for not reading the rules totally and missing the bit about ranting off about other OSs. But that raises a question. Where do you go to have a good rant, to vent your disgust at various corporations and thier hideous behaviour? :confused: (2 Replies)
Discussion started by: u6ik
2 Replies

2. Shell Programming and Scripting

awk - one liners

Guys, I have a requirement like this. A file has >5K records always. Separated by "|", it has 30 fields for each line. In some lines, I am getting an odd field. say, the 15th field is supposed to be 2 characters but comes in as >2. In this case, for resolving this I need to copy the value of... (6 Replies)
Discussion started by: PikK45
6 Replies

3. What is on Your Mind?

Those simple one liners

I wanted to say LOL and punch my face when I saw post#11 (where Don_Cragun even reduced the string manipulation with a simple regex) in the thread https://www.unix.com/shell-programming-scripting/220553-add-0-start-filename-2.html I mean, when things can be done with just a one liner, sometimes I... (6 Replies)
Discussion started by: ahamed101
6 Replies

4. What is on Your Mind?

A rant...

Hi guys... (Apologies for any typos etc...) This is basically a rant. I have been doing kids level projects and writing code to suit since around 1982, for the uProfessor, for the Sinclair Spectrum and later for the QL, IBM-XT in MS-DOS and after that for a 386DX40 up to Windows 95, until I... (3 Replies)
Discussion started by: wisecracker
3 Replies
Log::Handler::Levels(3pm)				User Contributed Perl Documentation				 Log::Handler::Levels(3pm)

NAME
Log::Handler::Levels - All levels for Log::Handler. DESCRIPTION
Base class for Log::Handler. Just for internal usage and documentation. METHODS
Default log level debug() info() notice() warning(), warn() error(), err() critical(), crit() alert() emergency(), emerg() Checking for active levels is_debug() is_info() is_notice() is_warning(), is_warn() is_error(), is_err() is_critical(), is_crit() is_alert() is_emergency(), is_emerg() Special level fatal() Alternative for the levels "critical" - "emergency". is_fatal() Check if one of the levels "critical" - "emergency" is active. Special methods trace() This method is very useful if you want to add a full backtrace to your message. Maybe you want to intercept unexpected errors and want to know who called "die()". $SIG{__DIE__} = sub { $log->trace(emergency => @_) }; By default the backtrace is logged as level "debug". # would log with the level debug $log->trace('who called who'); If you want to log with another level then you can pass the level as first argument: $log->trace(info => $message); dump() If you want to dump something then you can use "dump()". The default level is "debug". my %hash = (foo => 1, bar => 2); $log->dump(\%hash); If you want to log with another level then you can pass the level as first argument: $log->dump($level => \%hash); die() This method logs the message to the output and then call "Carp::croak()" with the level "emergency" by default. $log->die('an emergency error here'); If you want to log with another level, then you can pass the level as first argument: $log->die(fatal => 'an emergency error here'); log() With this method it's possible to log messages with the log level as first argument: $log->log(info => 'an info message'); Is the same like $log->info('an info message'); and $log->log('an info message'); If you log without a level then the default level is "info". PREREQUISITES
Carp Data::Dumper EXPORTS
No exports. REPORT BUGS
Please report all bugs to <jschulz.cpan(at)bloonix.de>. If you send me a mail then add Log::Handler into the subject. AUTHOR
Jonny Schulz <jschulz.cpan(at)bloonix.de>. COPYRIGHT
Copyright (C) 2007-2009 by Jonny Schulz. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.14.2 2012-11-21 Log::Handler::Levels(3pm)
All times are GMT -4. The time now is 07:31 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy