Just a Baby Moose
It quick postette day again here in the Moose-Pen
Just a quick one off re-factor for today. In the past few days I have been using a code snipitte like this;It quick postette day again here in the Moose-Pen
Just a quick one off re-factor for today. In the past few days I have been using a code snipitte like this;The first trial release of Log::Any with mephinet's structured and contextual logging support has been released for feedback!
These features make it easier to log structured data which will then be picked up by log parsers. Adding a single, unblessed hashref as the last argument to a log method will write that data structure as a compact entry at the end of your log string:
use Log::Any '$LOG';
use Log::Any::Adapter 'Stdout';
$LOG->info( "Hello, World", { foo => 'bar' } );
$ perl test.pl
Hello, World {foo => "bar"}
I'm delovelping SPVM on GitHub. and I release SPVM on CPAN
SPVM is currently 6x faster than Perl 5.26.
SPVM is not another implementaion of Perl. SPVM is a language and you can call SPVM function from Perl. Installation is very easy. "cpan SPVM" or "cpanm SPVM".
Don't afraid not to run CPAN module. You can use any CPAN modules and use SPVM together.
use FindBin; use lib "$FindBin::Bin/lib"; use SPVM 'MyModule2'; my $total = SPVM::MyModule2::foo(3, 5); print $total . "\n";
Module file
For those who do not know the module, Data::Dump::Tree renders your data structures in a tree fashion for legibility. https://github.com/nkh/P6-Data-Dump-Tree
It also
can display two data structures side by side (DDTR::MultiColumns)
can display the difference between two data structures (DDTR::Diff)
can generate DHTM output (DDTR::DHTML)
can display a folding structure in Curses (DDTR::Folding)
can display parts of the data structure Horizontally ( :flat() )
can be used to "visit" a data structure and call callbacks you define
install Term::ANSIColor and get colored output (highly recommended)
This blog entry is about the the latest changes.
I'll start with dd, the rakudo built-in dumper, which I learner to hate and love. I certainly love it when I am debugging my module and I can't use my own data dumper. I have in this version copied a few of its features which I found better.
This new release would not happen without the endlessly caring people on #perl6.
Its sort day here in the Moose-Pen.
Well I have been on a role since I started on 'Group By' so I figure I might as well get the last of the base SQL code snippets in place. The last one is 'sort' or in SQL 'ORDER BY' and why change something that isn't broke here is a new test case ' 60_order_by.t ' and here it the hash I am going to start with;Hey everyone,
Following is the p5p (Perl 5 Porters) mailing list summary for the past week.
Enjoy!
Since I started my journey of PullRequest, I always wanted to do at least one PR a day every month. I found it very tough and have only managed few times. To be precise 3 times in the year 2015 (Oct: 45, Nov: 31, Dec: 60). However the following year 2016 wasn't as good as expected, unfortunately. I could only successfully managed to do that in one month (Dec: 77). This year 2017, I am charged up again to do at least 6 months, if not at least beat my year 2015 target of 3 months. So far I could only do 2 months (Jan: 63, Jul: 32). I still have plenty of time in my hand and hopeful to get another 4 months, in the remaining months of the year.
At times, I feel like starting with one PR a week challenge and then move up slowly.
Any suggestions/ideas?
I'm delighted to be attending The Perl Conference in Amsterdam in just over a week's time.
We'll be kicking off the event with two days of public training courses. I'll be offering a full-day class on Perl 6's awesome regexes and grammars on Monday August 7, and then my popular Presentation Aikido class on Tuesday August 8.
In addition to my own two events, brian d foy and Jeff Goff are also offering some great classes in Perl 5 or Perl 6...so you're guaranteed some first-rate training, whichever course you choose. All the classes are just €150 per day (including lunch and recaffeination breaks) and you can sign up for any of them on the conference's new training webpage.
It another gather day here in the Moose-Pen.
Now that I did the re-factoring for gather it is time to move on the Driver::DBI and do to code to generate the SQL. Of course I always start with a test case and this time it is a new one 50_having.t. It is much the same as the other test cases so no need to repeat that here, the only important bit is this hash;I've released berrybrew version 1.15.
All of the credit for this update goes to PETERCJ who went far above and beyond with this PR. It's a pleasure to have him contributing to this (or any) project.
The significant change here is the addition of the use command. I feel that this addition adds tremendous value to the software, and makes it much easier to use.
This allows you to temporarily switch to one of your other installed Perl instances either in the same command window or new ones without switching your currently switched to one. Here are some examples:
Temporarily use a different installed version, in the same window. Typing exit will return you to your previous environment within the same window:
CPAN Day marks the date of the first recorded upload to CPAN: Andreas König uploaded Symdump 1.20 (it's since been renamed Devel::Symdump).
On CPAN Day this year, you could do some small thing to help celebrate. This could be as simple as emailing the author of a module that you regularly use, and say "thank you". It may not sound like much, but it's great to be on the receiving end.
There are lots of other things you could do to help someone else's module. For a previous CPAN Day I posted a list of ideas.
Or if you've got your own distributions on CPAN, you could fix a bug, or merge an outstanding pull request *cough*. This year I plan to merge at least one PR, and do at least one release to CPAN. I'll submit a PR too.
What will you do?
The official training schedule is still being drawn up, but I'm pleased to offer a full day of Perl 6 training at the b.amsterdam venue the day before TPC::EU
Its gather in the dream day here in the Moose-pen
Well going to skip a post on creating a gaggle of new tests today and instead do some core coding in Driver::DBI and Database::Accessor. Now believe it or not I had a dream last night that something was wrong in the way I set the architecture of Grathers and Filters, GROUP BY and , HAVING in SQL, in Database::Accessor. Boy this does sound corny!. So today I started to look at that part of my code.
In the original Data::Accessor a 'GROUP BY' and 'HAVING' looked like thisPython is often touted as the "winner" among scripting languages, but you couldn't tell from this post:
https://developers.slashdot.org/story/17/07/22/2250237/ieee-spectrum-declares-python-the-1-programming-language
Hey everyone,
Following is the p5p (Perl 5 Porters) mailing list summary for the past week.
Enjoy!
Today, loosely inspired by this thread over on Perlmonks, I'm going to show how to set up an Arduino (Uno in this test case) with a pseudo-register that allows toggling one if its digital pins on and off, and another pseudo-register to read an analog pin that the digital pin is connected to, over I2C. Because it's digital to analog, the only possible values of the analog read will be 0 (off) or 1023 (full on, ie. 5v). This is an exceptionally basic example, but with some thought, one can imagine the possibilities (read/write EEPROM, set PWM etc etc).
Its link day here in the Moose-Pen
Well seeing as my elements/fields and conditions/Where are working quite well I think it is time to move on to the next attribute in Accessor.pm Links.
In SQL joins are the same as Database::Accessor Links so given this SQL;
SELECT people.first_name, people.last_name, people.id, address.street FROM people LEFT JOIN address ON people.id = address.user_id WHERE people.first_name = ?
the
LEFT JOIN address ON people.id = address.user_id
is represented by;
Perl 5.28 boolean check become fast.
Bencmark is very good!
36 @ 96.55% .. 99.99%
245 @ 100.00% .. 100.99%
28 @ 101.00% .. 109.99%
7 @ 110.00% .. 119.99%
10 @ 120.00% .. 129.99%
29 @ 130.00% .. 199.99%
4 @ 200.00% .. 299.99%
1 @ 314.29%
so about 10% of tests became marginally slower - usually due to one extra
conditional in an op to test for a private BOOL flag or ReANY(); about 70%
of tests were almost unaffected, while 20% of tests showed improvement,
most with considerable improvement, and a few with spectacular improvement.
(The 314% is for an empty @lexical tested in boolean context).
various boolean-related optimisations - perl.git
Today, Sunday 23rd July 2017, is the 1000th consecutive days of releasing to CPAN. It means a lot to me personally and certainly not an easy task. I have been through many ups and downs in this entire journey. I would say many ups than downs. What inspired to me start the journey? It was one of the blog by Neil Bowers that got me started.
Then came a time when Barbie decided to stop after completing 370th consecutive releases to CPAN. He even wrote a blog about it and mentioned my name in the blog. He even gave few advises how to survive.
The PPIx-Regexp package provides a PPI-like parse of Perl regular expressions. Part of its functionality includes reporting on the versions of Perl under which a given regular expression or its elements are valid. Up to this point the version fumctionality has been fairly simple: method perl_version_introduced() returns the version of Perl that introduced the element, and perl_version_removed() returns the version under which it was removed, or undef if the element is valid in the most-recent Perl.
Unfortunately reality is not so constrained, and Perl 5.27.1 contains the first instance known to me of regular expression functionality which was removed and then reinstated: the un-escaped literal left curly bracket following another literal. Yes, this is just a development release, but the explanation given in perl5271delta (use of the construct in GNU Autoconf) makes it sound to me like the reinstatement needs to be taken seriously. Here is how I plan to deal with all such occurrances:
blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.