HEADLINES

With great pleasure, we announce Mark Senn as the winner of “Perl Weekly Challenge - 031”. Congratulations Mark, you should soon hear from Perl Careers about your reward. For rest of the participants, I would say Good Luck for next time. Keep sending in your solutions and share your knowledge with each other.

RECAP

Here is the recap of last week “Perl Weekly Challenge - 031”.

PERL REVIEW

Please checkout Perl solutions review of the “Perl Weekly Challenge - 030” by Kian-Meng Ang.

If you missed any past reviews then please checkout the collection.

RAKU REVIEW

Please checkout Raku solutions review of the “Perl Weekly Challenge - 030” by Laurent Rosenfeld.

Laurent also reviewed Raku solutions of “Perl Weekly Challenge - 003” and “Perl Weekly Challenge - 014”.

If you missed any past reviews then please checkout the collection.

CHART

Please take a look at the charts showing interesting data.

I would like to thank every member of the team for their valuable suggestions. Please do share your experience with us.

NEW MEMBERS

Tyle Limkemann, an experienced hacker from Arizona, USA. Javier Luque from Sevenoaks with 16 years of experience.

Check out current team members.

GUESTS

Please do share your creative solutions in other languages.

Task #1

Contributed by Neil Bowers

Count instances

Create a script that either reads standard input or one or more files specified on the command-line. Count the number of times and then print a summary, sorted by the count of each entry.

So with the following input in file example.txt

apple banana apple cherry cherry apple

the script would display something like:

apple 3 cherry 2 banana 1

For extra credit, add a -csv option to your script, which would generate:

apple,3 cherry,2 banana,1

Task #2

Contributed by Neil Bowers

ASCII bar chart

Write a function that takes a hashref where the keys are labels and the values are integer or floating point values. Generate a bar graph of the data and display it to stdout.

The input could be something like:

$data = { apple => 3, cherry => 2, banana => 1 }; generate_bar_graph($data);

And would then generate something like this:

apple | ############ cherry | ######## banana | ####

If you fancy then please try this as well: (a) the function could let you specify whether the chart should be ordered by (1) the labels, or (2) the values.

Last date to submit the solution 23:59 (UK Time) Sunday 3rd November 2019.