If you have a Perl-related news item you'd like to share, you may post it in the Perl Newssection.
Please try to avoid duplicating news; but pointers (with summaries) to important stories on other sites are acceptable here.
Update, Oct 2014: Concurrency in P6 has developed a long way since I wrote this post. This video briefly runs through the Functional Programming paradigm features that have been implemented, including Promises, before discussing the latest Object Oriented paradigm work, including Monitors, Actors, and Evject.
Evidently the time has come to fully develop concurrency and parallelism features in Perl 6.
The Perl 6 language design team led by Larry Wall has discussed concurrency and parallelism for over a decade. So every element of the P6 language has been considered in the light of concurrency and parallelism, from variable assignment on up. But that's just design.
There's also been implementation work done. However, Rakudo (the leading P6 compiler) has surfaced very little of this work (gather/take is about it) and while Niecza (another compiler) has long exposed continuations, coroutines, and threads, Niecza's author Stefan O'Rear basically stopped working on Niecza a year ago. (Imo this is good news; read on.)
Until recently the Rakudo compiler only worked on one backend, the Parrot VM. While it supports concurrency, Parrot's support has never been considered reliable enough by the Rakudo team for them to develop more of the concurrency features in Rakudo.
Recently the Rakudo team began porting it to work on the JVM. One of the primary motivations claimed was to unblock development of concurrency and parallelism features.
Starting at YAPC::NA 2013, at the start of June, Stefan O'Rear began working on the JVM port. In the last week or so he made JVM concurrency primitives available to NQP, which is what's needed to implement them in Rakudo. And thus, in the last few days, jnthn published an initial prototype. It already looks promising...
Watch in terror as Damian writes a Perl program to extract square roots using nothing but quantum mechanics, general relativity, and the very fabric of the space-time continuum.
Along the way we'll also investigate: Wittgenstein's dark secret; the diminishing returns of physical computation; Roman philosophy; when Super Science Adventures go wrong; the greatest Lego kit of all time; the secret identity of Sith; carbon logic vs silicon logic; the giants of 1930's physics; elementary spin-half quanta under relativistic motion; CAT scans; Will Smith; bongos; drunken bets involving penguins; algorithmic consistency; God's dice and the problem of free will; intrinsic self-inconsistency; the many worlds outside Copenhagen; and the inventor of stage diving.
What happens when Dirac meets Deutsch meets Damian? Mere anarchy is loosed upon the world!
There's some perl games codebases to start writing games in SDL and OpenGL with input and output here :
You can write action, shooter, platform etc. games in perl with it.
We meet the 2nd Tuesday each month. We try to have one "basics" presentation, and one more advanced, to appeal to the broadest possible Perl user-base.
For the 99.9% of you not within driving range of the Salt Lake Perl Mongers, I appreciate your patience with this announcement. Salt Lake Perl Mongers is in its 3rd month. While I don't intend to post every month, Perl News is a good way to get the word out during these first 90 days.
Update, Jan 2, 2014: Rakudo/MoarVM appears to be passing ~18k of ~28k spectests -- ie it's running a whole lot of Perl 6 code.
If you're interested in the guts and gore that involves VMs, or re-implementing Perl, or implementing other languages, or hanging out with or helping those who do, you might be interested in MoarVM which "reboots the whole VM idea for Perl, based on experience with Parrot, without many of the flaws of Parrot".
It looks like most of the current action is on the IRC channel #moarvm on freenode.net (for which logs started earlier today).
Please get this new and shiny release of our favorite scripting language. Share and enjoy.
Front page | perl.perl5.porters | Postings from May 2013
perl 5.18.0 is now available!
Date: May 18, 2013 13:35
Subject: perl 5.18.0 is now available!
It is an error to divide people into the living and the dead:
there are people who are dead-alive, and people who are
alive-alive. The dead-alive also write, walk, speak, act. But they
make no mistakes; only machines make no mistakes, and they produce
only dead things. The alive-alive are constantly in error, in
search, in questions, in torment.
-- Yevgeny Zamyatin
We are excited to announce perl v5.18.0, the first stable release of v
18 of Perl 5.
You will soon be able to download Perl v5.18.0 from your favorite CPAN
or find it at:
SHA1 digests for this release are:
You can find a full list of changes in the file "perldelta.pod" locate
the "pod" directory inside the release and on the web.
Perl v5.18.0 represents approximately 12 months of development since P
v5.16.0 and contains approximately 400,000 lines of changes across 2,1
files from 113 authors.
Perl continues to flourish into its third decade thanks to a vibrant
community of users and developers. The following people are known to h
contributed the improvements that became Perl v5.18.0:
Aaron Crane, Aaron Trevena, Abhijit Menon-Sen, Adrian M. Enache, Alan
Alavi, Alexandr Ciornii, Andrew Tam, Andy Dougherty, Anton Nikishaev,
Aristotle Pagaltzis, Arthur Axel 'fREW' Schmidt, Augustina Blair, Bob
Brad Gilbert, Breno G. de Oliveira, Brian Carlson, Brian Fraser, Charl
Gonzalez, Chip Salzenberg, Chris 'BinGOs' Williams, Christian Hansen,
Kuskie, Craig A. Berry, Dagfinn Ilmari Mannsåker, Daniel Dragan, Dani
Perrett, Darin McBride, Dave Rolsky, David Golden, David Leadbeater, D
Mitchell, David Nicol, Dominic Hargreaves, E. Choroba, Eric Brine, Eva
Miller, Father Chrysostomos, Florian Ragwitz, François Perrad, George
Goro Fuji, H.Merijn Brand, Herbert Breunung, Hugo van der Sanden, Igor
Zaytsev, James E Keenan, Jan Dubois, Jasmine Ahuja, Jerry D. Hedden, J
Robinson, Jesse Luehrs, Joaquin Ferrero, Joel Berger, John Goodyear, J
Peacock, Karen Etheridge, Karl Williamson, Karthik Rajagopalan, Kent F
Leon Timmermans, Lucas Holt, Lukas Mai, Marcus Holland-Moritz, Markus
Martin Hasch, Matthew Horsfall, Max Maischein, Michael G Schwern, Mich
Schroeder, Moritz Lenz, Nicholas Clark, Niko Tyni, Oleg Nesterov, Patr
Hägglund, Paul Green, Paul Johnson, Paul Marquess, Peter Martini, Raf
Garcia-Suarez, Reini Urban, Renee Baecker, Rhesa Rozendaal, Ricardo Si
Robin Barker, Ronald J. Kimball, Ruslan Zakirov, Salvador Fandiño, Sa
Scott Lanning, Sergey Alekseev, Shawn M Moore, Shirakata Kentaro, Shlo
Fish, Sisyphus, Smylers, Steffen Müller, Steve Hay, Steve Peters, Ste
Schubiger, Sullivan Beck, Sven Strickroth, Sébastien Aperghis-Tramoni
Sibley, Tobias Leich, Tom Wyant, Tony Cook, Vadim Konovalov, Vincent P
Volker Schatz, Walt Mankowski, Yves Orton, Zefram.
The list above is almost certainly incomplete as it is automatically
generated from version control history. In particular, it does not inc
the names of the (very much appreciated) contributors who reported iss
the Perl bug tracker.
Many of the changes included in this version originated in the CPAN mo
included in Perl's core. We're grateful to the entire CPAN community f
helping Perl to flourish.
For a more complete list of all of Perl's historical contributors, ple
the AUTHORS file in the Perl source distribution.
We expect to release v5.19.0 on Monday, May 20th, 2013. The next majo
stable release of Perl 5, version 20, should appear in May 2014.
perl 5.18.0 is now available! by Ricardo Signes
Pinto is an application for creating and managing a custom CPAN-like repository of Perl modules. I decided to play with pinto and while I am chef fan has created pinto cookbook - a chef cookbook to install and configure pinto application. I hope this cookbook will be useful both for pinto users and pinto developers.
I'm on IRC just about all the time (my handle is "thaljef"). But I thought it might be interesting to actually schedule a session and invite people to come in and ask questions about Pinto, suggest a feature, report a bug, or just say "Hi".
So there will be two one-hour jam sessions in the #pinto channel on irc.perl.org this Thursday, May 2. The first will at 14:00 and the second will be at 18:00 (all times GMT). If you haven't used IRC before, this is an excellent guide.
ack 2.0 has been released. ack is a grep-like search tool that has been optimized for searching large heterogeneous trees of source code.
ack has been around since 2005. Since then it has become very popular and is packaged by all the major Linux distributions. It is cross-platform and pure Perl, so will run on Windows easily. See the "Why ack?" page for the top ten reasons, and dozens of testimonials.
ack 2.0 has many changes from 1.x, but here are four big differences and features that long-time ack 1.x users should be aware of.
By default all text files are searched, not just files with types that ack recognizes. If you prefer the old ack 1.x behavior of only searching files that ack recognizes, you can use the -k/--known-types option.
There is a much more flexible type identification system available. You can specify a file type based on extension (.rb for Ruby), filename (Rakefile is a Ruby file), first line matching a regex (Matching /#!.+ruby/ is a Ruby file) or regex match on the filename itself.
Greater support for ackrc files. You can have a system-wide ackrc at /etc/ackrc, a user-specific ackrc in ~/.ackrc, and ackrc files local to your projects.
The -x argument tells ack to read the list of files to search from stdin, much like xargs. This lets you do things like git ls | ack -x foo and ack will search every file in the git repository, and only those files that appear in the repository.
On the horizon, we see creating a framework that will let authors create ack plugins in Perl to allow flexibility. You might create a plugin that allows searching through zip files, or reading text from an Excel spreadsheet, or a web page.
ack has always thrived on numerous contributions from the ack community, but I especially want to single out Rob Hoelz for his work over the past year or two. If it were not for Rob, ack 2.0 might never have seen the light of day, and for that I am grateful.
A final note: In the past, ack's home page was betterthangrep.com. With the release of ack 2.0, I've changed to beyondgrep.com. "Beyond" feels less adversarial than "better than", and implies moving forward as well as upward. beyondgrep.com also includes a page of other tools that go beyond the capabilities of grep when searching source code.
For long time ack users, I hope you enjoy ack 2.0 and that it makes your programming life easier and more enjoyable. If you've never used ack, give it a try.