Geizhals Preisvergleich unterstützt den Deutschen Perl/Raku-Workshop

We are happy to announce that Geizhals Preisvergleich supports the German Perl Workshop in 2024!

Dancer2 1.1.0 Released

Hey everyone,

Happy Holidays! Dancer2 1.1.0 has been released and is on its way to CPAN. It has one really awesome new feature: named routes.

With this update, you can name each route in your Dancer2 application, then refer to that route by name with a new keyword, uri_for_route. You have a lot of control over how this route is constructed, and can use it anywhere you were previously using uri_for. This helps you to avoid the need for lengthy URL references in your code, and makes it easier for you to build applications that are easier to grow, maintain, and later refactor.

You can read more about it in the Dancer2 manual, or check out the pull request that introduced the change. As a bonus, the Twelve Days of Dancer (our mini-advent calendar) launches this week, and Sawyer has written a great article that covers this new feature and keyword in-depth.

Happy Dancing! Jason/CromeDome

System Thinking

I started to also post on dev.to and will post there mostly about topics larger than Perl : psychology of programming, software engineering and alike.

Perl Weekly Challenge 272: Defang IP Address

These are some answers to the Week 272, Task 1, of the Perl Weekly Challenge organized by Mohammad S. Anwar.

Spoiler Alert: This weekly challenge deadline is due in a few days from now (on June 9, 2024 at 23:59). This blog post provides some solutions to this challenge. Please don’t read on if you intend to complete the challenge on your own.

Task 1: Defang IP Address

You are given a valid IPv4 address.

Write a script to return the defanged version of the given IP address.

A defanged IP address replaces every period “.” with “[.]".

Example 1

Input: $ip = "1.1.1.1"
Output: "1[.]1[.]1[.]1"

Example 2

Input: $ip = "255.101.1.0"
Output: "255[.]101[.]1[.]0"

This the first time that I hear that an IP address could be "defanged."

Defang IP Address in Raku

This week in PSC (133) | 2024-01-25

Just me and Graham this week.

  • builtin::nan needs better documentation on the kind of NaN it provides.
  • We discussed lots about builtin and lexical imports, and how to handle a few odd cornercases.
  • Perl 5.39.7 is now out; we need to work out the schedule for the final few devel releases and the real thing in May.

The YAMLScript Advent Blog

Season's Greetings, Perl!

I've spent almost all of my time since my [last post here]( https://blogs.perl.org/users/ingy_dot_net/2023/05/perl-toolchain-synergy.html) working on a new programming language, YAMLScript.

It's working now and I've decided a do a [2023 Advent YAMLScript Blog]( https://yamlscript.org/posts/advent-2023/index/) for it. The blog started last Friday and will continue (at least) until December 24th.

I encourage you to follow along. At some point this month YAMLScript modules will become available for CPAN and Raku and many other languages. I also encourage you to try writing an [Advent of Code 2023]( https://adventofcode.com/) solution in YAMLScript, if you are playing along with AoC this year.

All the Best, Ingy döt Net

Curated list of Perl modules

See Perl.html
It's an example of the fabulous TiddlyWiki (tiddlywiki.com), so it's about 230,000 bytes.

Perl Weekly Challenge 271: Sort by 1 Bits

These are some answers to the Week 271, Task 2, of the Perl Weekly Challenge organized by Mohammad S. Anwar.

Spoiler Alert: This weekly challenge deadline is due in a few days from now (on June 2, 2024 at 23:59). This blog post provides some solutions to this challenge. Please don’t read on if you intend to complete the challenge on your own.

Task 2: Sort by 1 Bits

You are given an array of integers, @ints.

Write a script to sort the integers in ascending order by the number of 1 bits in their binary representation. In case more than one integers have the same number of 1 bits then sort them in ascending order.

Example 1

This week in PSC (125) | 2023-11-23

The PSC met today. In summary:

  • Paul’s TPRF grant was accepted, he plans to spend some of that time to work on some PPCs first (qt strings, overload)
  • FOSDEM Perl Devroom CfP: none of us are planning to attend in person, but if someone else wanted to present on our behalf we could coördinate with them and work out a subject to talk about
  • Discussed coming up with a Perl roadmap that we could present to the world (and entice sponsorship for TPRF’s Perl Development Fund and Grants program)
  • We discussed opening up our meetings to the occasional guest, so they could see what we’re actually doing (boring!) and give us an outside perspective

An Option for Syntax Highlighting on blogs.perl.org

I've struggled with the syntax highlighting here on this blog. I really want to use this site and I will continue to do so.

After trying in vain to get some "auto" syntax highlighting here via the editor, I reached for an old trick I've used in the past. Generating HTML using some external service. After a quick Google search, I found https://tohtml.com/perl/. Given a block of Perl code, it'll generate HTML based syntax highlighting that one may add to their post. For example,

Decent Syntax Highlighting (from tohtml.com/perl)

German Perl/Raku Workshop 2024

(English below)

Der nächste Deutsche Perl/Raku-Workshop wird vom 15. bis 17. April 2024 in Frankfurt stattfinden. Damit wir interessante drei Tage mit Perl und Raku verbringen können, brauchen wir Vorträge und Teilnehmer... Vortragsvorschläge könnt ihr bereits einreichen und auch anmelden könnt ihr euch schon hier...

https://act.yapc.eu/gpw2024

The German Perl/Raku workshop will take place
on the 15th to 17th April 2024 again in Frankfurt am Main.
We will spend three interesting days with Perl and Raku, so you are invited
to participate and also to give presentations.

You can submit your presentations here

Perl Weekly Challenge 271: Maximum Ones

These are some answers to the Week 271, Task 1, of the Perl Weekly Challenge organized by Mohammad S. Anwar.

Spoiler Alert: This weekly challenge deadline is due in a few days from now (on June 2, 2024 at 23:59). This blog post provides some solutions to this challenge. Please don’t read on if you intend to complete the challenge on your own.

Task 1: Maximum Ones

You are given a m x n binary matrix.

Write a script to return the row number containing maximum ones, in case of more than one rows then return smallest row number.

Example 1

Input: $matrix = [ [0, 1],
                   [1, 0],
                 ]
Output: 1

Row 1 and Row 2 have the same number of ones, so return row 1.

Hai Julia !

I released Juliagraph an interactive fractal painter for Julia and Mandelbrot types of fractal.

first.png

Final Call - 2024 TPRC Science Track Survey

We have had a good number of responses, but would like more. And time is running out! Please take this survey and share with your Perl contacts.

Survey URL: https://forms.gle/DDPWsNqEsZW8AyWX7

The track would target academic and industrial STEM applications, and emulate in some way traditional science conference tracks; meaning the talks would be based on paper and poster submissions. If this came to pass, the Science Perl Committee would also follow up with the publishing of the papers in an official proceedings of this track.

Survey officially closes on Thursday, November 23, 2023. But we would love your feedback!

Sincerely,
Brett Estrade
oodler@cpan.org
Chairman, Science Perl Committee

FOSDEM 2024 Call for Participation

The Perl and Raku Foundation is thrilled to announce that the FOSDEM organising team has accepted our proposal to set up a DevRoom on Saturday, February 3rd 2024. It has been quite a few years since the last Perl DevRoom at FOSDEM. Historically, they have always been well attended and packed.

Time for an Update

Since last time, a lot has happened, and TPRF is excited to help create this venue for sharing news with developers from Europe and across the globe. Many FOSDEM visitors have a background using Perl, but may have missed out on recent developments. Larry Wall himself was a guest speaker at FOSDEM in 2015 to announce Perl 6, which was later renamed to Raku. Much has happened since then, and there is lots to share!

Participation

# Perl Weekly Challenge 270: Special Positions

These are some answers to the Week 270, Task 1, of the Perl Weekly Challenge organized by Mohammad S. Anwar.

Spoiler Alert: This weekly challenge deadline is due in a few days from now (on May 26, 2024 at 23:59). This blog post provides some solutions to this challenge. Please don’t read on if you intend to complete the challenge on your own.

Task 1: Special Positions

You are given a m x n binary matrix.

Write a script to return the number of special positions in the given binary matrix.

A position (i, j) is called special if $matrix[i][j] == 1 and all other elements in the row i and column j are 0.

Example 1

This week in PSC (123) | 2023-11-09

We skipped the meeting last week (2023-11-02). This week was a quiet week too, so we don’t have much to report.

We talked a bit about the PPCs currently being implemented. PPCs 14 (English names) and 21 (optional chaining) have people implementing them - we hope to have some progress to publish soon.

Dodging the Go loop trap

Ted Unangst:

And now we’re trapped. There’s only one friend variable, constantly changing as we go through the loop, with the most likely result one of our friends will get half a dozen messages, while the other five receive nothing, to the annoyance of both groups.

Funny that Perl got this one right when not only many before didn’t but many since also haven’t.

In Go, as Ted says, they may even change the language to fix it; in Javascript, they already have.

Setting up a free Oracle Database for Perl development

I recently added Oracle Database support to SQL::Inserter (check it out if you'd like simple to use, high-performance inserting to SQL databases). I had not used an Oracle Database since my uni days 20 years ago, so I had to set one up to test it.

Even though Oracle provides a free development DB, the process is not as simple as Postgres/MySQL etc., so I thought I'd document it for future reference.

There are basically two ways you can go, with Oracle providing instructions either for a VirtualBox VM, or Docker. For the purposes of this article, we'll use VirtualBox. If you prefer Docker, you can follow Oracle's instructions and skip the next section.

Setting up the Oracle VM

Oracle provides instructions for setting up a VM with their latest 23c Database.

To sum up, you download and install VirtualBox, as well as the 23c VM image (.ova).

Launch VirtualBox, go to File->Import Appliance and select the .ova file that you just downloaded. You can leave the defaults for the import.

Perl Weekly Challenge 269: Distribute Elements

These are some answers to the Week 269, Task 2, of the Perl Weekly Challenge organized by Mohammad S. Anwar.

Spoiler Alert: This weekly challenge deadline is due in a few days from now (on May 19, 2024 at 23:59). This blog post provides some solutions to this challenge. Please don’t read on if you intend to complete the challenge on your own.

Task 2: Distribute Elements

You are given an array of distinct integers, @ints.

Write a script to distribute the elements as described below:

1) Put the 1st element of the given array to a new array @arr1. 2) Put the 2nd element of the given array to a new array @arr2.

Once you have one element in each arrays, @arr1 and @arr2, then follow the rule below:

If the last element of the array @arr1 is greater than the last element of the array @arr2 then add the first element of the given array to @arr1 otherwise to the array @arr2.

When done distribution, return the concatenated arrays. @arr1 and @arr2.

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.