Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Is it possible to shorten this code?

by uacnix (Initiate)
on Jun 16, 2015 at 17:18 UTC ( #1130645=obfuscated: print w/replies, xml ) Need Help??

Hello dearest Monks,

i'm looking for the wisdom of shorthening my code:
use LWP::Simple; @a = <>; getprint("http://LeWebsite.com?a=".($a[0])."&b=".($a[2]));
As You have noticed, i'm not interested in the second line, but it is required that the program takes 3 lines of input:

-a digit

-some bollox that You can skip in the program execution, but it will have to bypass/workaround/skip this line

-some more or less random characters, that have to be passed as argument.

I'm just a peasant in PERL, but I heard it's the best language to write shortest code, so i'm trying my luck with It.

Thank You in advance guys.

Update:

-I've checked the codes, and I've been able to use only the choroba's first code and at this place I'm really sorry that I didn't mention the STDIN input and chomp.

I found a workaround for chomp- I do it "serverside", my script on the site checks for newline symbols and replaces them

Anyway, thanks to You, dear Monks, my code is 14 chars shorter, and that's great progress, thank You!

Replies are listed 'Best First'.
Re: Is it possible to shorten this code?
by choroba (Bishop) on Jun 16, 2015 at 17:33 UTC
    With no higher knowledge, just drop all unnecessary characters:
    use LWP::Simple;@a=<>;getprint"http://LeWebsite.com?a=$a[0]&b=$a[2]"

    You might need to add chomp to the code, though, to remove newlines from the input:

    use LWP::Simple;chomp(@a=<>);getprint"http://LeWebsite.com?a=$a[0]&b=$ +a[2]"
    لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ
      If the values were passed as args instead of STDIN, it would save a few chars.
      use LWP::Simple;getprint"http://LeWebsite.com?a=$ARGV[0]&b=$ARGV[2]"
Re: Is it possible to shorten this code?
by ikegami (Pope) on Jun 16, 2015 at 18:03 UTC
    Via STDIN:
    chomp(@a=<>);system curl,"http://LeWebsite.com?a=$a[0]&b=$a[2]"
    Via args:
    system curl,"http://LeWebsite.com?a=$ARGV[0]&b=$ARGV[2]"
    Of course, it won't escape any characters that need escaping.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: obfuscated [id://1130645]
Approved by ikegami
help
Chatterbox?
and not a whimper to be heard...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (9)
As of 2018-06-24 17:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?



    Results (126 votes). Check out past polls.

    Notices?