diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-12-06 13:49:48 +0000 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-12-06 13:49:48 +0000 |
| commit | b8139671cf7b05d0d3f7389de80419b90c28a6dc (patch) | |
| tree | 67d312d7288dea468e187e68e9c121de0c183209 | |
| parent | 9f1f1152a145c58f2d73857df5e7e3a216f86ce9 (diff) | |
| download | perlweeklychallenge-club-b8139671cf7b05d0d3f7389de80419b90c28a6dc.tar.gz perlweeklychallenge-club-b8139671cf7b05d0d3f7389de80419b90c28a6dc.tar.bz2 perlweeklychallenge-club-b8139671cf7b05d0d3f7389de80419b90c28a6dc.zip | |
- Added solutions by Athanasius.
| -rw-r--r-- | challenge-089/athanasius/perl/ch-1.pl | 120 | ||||
| -rw-r--r-- | challenge-089/athanasius/perl/ch-2.pl | 181 | ||||
| -rw-r--r-- | challenge-089/athanasius/raku/ch-1.raku | 96 | ||||
| -rw-r--r-- | challenge-089/athanasius/raku/ch-2.raku | 145 | ||||
| -rw-r--r-- | stats/pwc-current.json | 235 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 70 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 628 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 726 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 116 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 40 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 96 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 28 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 54 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 36 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 38 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 484 |
16 files changed, 1827 insertions, 1266 deletions
diff --git a/challenge-089/athanasius/perl/ch-1.pl b/challenge-089/athanasius/perl/ch-1.pl new file mode 100644 index 0000000000..c88c07f2fb --- /dev/null +++ b/challenge-089/athanasius/perl/ch-1.pl @@ -0,0 +1,120 @@ +#!perl
+
+###############################################################################
+=comment
+
+Perl Weekly Challenge 089
+=========================
+
+Task #1
+-------
+*GCD Sum*
+
+Submitted by: Mohammad S Anwar
+
+You are given a positive integer $N.
+
+Write a script to sum [ https://en.wikipedia.org/wiki/Greatest_common_divisor |
+GCD] of all possible unique pairs between 1 and $N.
+
+Example 1:
+
+ Input: 3
+ Output: 3
+
+ gcd(1,2) + gcd(1,3) + gcd(2,3)
+
+Example 2:
+
+ Input: 4
+ Output: 7
+
+ gcd(1,2) + gcd(1,3) + gcd(1,4) + gcd(2,3) + gcd(2,4) + gcd(3,4)
+
+=cut
+###############################################################################
+
+#--------------------------------------#
+# Copyright © 2020 PerlMonk Athanasius #
+#--------------------------------------#
+
+#==============================================================================
+=comment
+
+From the Examples, it appears that "all possible unique pairs between 1 and $N"
+should be interpreted to mean:
+
+ all (i, j) such that 1 <= i < j <= N.
+
+In the solution below, the GCD calculation is performed by the gcd() function
+in the CPAN module Math::Prime::Util.
+
+=cut
+#==============================================================================
+
+use strict;
+use warnings;
+use Const::Fast;
+use Math::Prime::Util qw( gcd );
+use Regexp::Common qw( number );
+
+const my $USAGE =>
+"Usage:
+ perl $0 <N>
+
+ <N> A positive integer\n";
+
+#------------------------------------------------------------------------------
+BEGIN
+#------------------------------------------------------------------------------
+{
+ $| = 1;
+ print "\nChallenge 089, Task #1: GCD Sum (Perl)\n\n";
+}
+
+#==============================================================================
+MAIN:
+#==============================================================================
+{
+ my $N = parse_command_line();
+
+ print "Input: $N\n";
+
+ my $sum = 0;
+
+ for my $i (1 .. $N - 1)
+ {
+ for my $j ($i + 1 .. $N)
+ {
+ $sum += gcd($i, $j);
+ }
+ }
+
+ print "Output: $sum\n";
+}
+
+#------------------------------------------------------------------------------
+sub parse_command_line
+#------------------------------------------------------------------------------
+{
+ my $args = scalar @ARGV;
+ $args == 0 and error('Command-line argument missing' );
+ $args > 1 and error('Too many command-line arguments');
+
+ my $N = $ARGV[0];
+ $N =~ /\A$RE{num}{int}\z/ or error( qq["$N" is not an integer] );
+ $N > 0 or error( qq["$N" is not positive] );
+
+ return $N;
+}
+
+#------------------------------------------------------------------------------
+sub error
+#------------------------------------------------------------------------------
+{
+ my ($message) = @_;
+
+ die "ERROR: $message\n$USAGE";
+}
+
+###############################################################################
diff --git a/challenge-089/athanasius/perl/ch-2.pl b/challenge-089/athanasius/perl/ch-2.pl new file mode 100644 index 0000000000..481cd18384 --- /dev/null +++ b/challenge-089/athanasius/perl/ch-2.pl @@ -0,0 +1,181 @@ +#!perl
+
+###############################################################################
+=comment
+
+Perl Weekly Challenge 089
+=========================
+
+Task #2
+-------
+*Magical Matrix*
+
+Submitted by: Mohammad S Anwar
+
+Write a script to display matrix as below with numbers 1 - 9. Please make sure
+numbers are used once.
+
+ [ a b c ]
+ [ d e f ]
+ [ g h i ]
+
+So that it satisfies the following:
+
+ a + b + c = 15
+ d + e + f = 15
+ g + h + i = 15
+ a + d + g = 15
+ b + e + h = 15
+ c + f + i = 15
+ a + e + i = 15
+ c + e + g = 15
+
+=cut
+###############################################################################
+
+#--------------------------------------#
+# Copyright © 2020 PerlMonk Athanasius #
+#--------------------------------------#
+
+#==============================================================================
+=comment
+
+Although the Task is to construct a normal magic square of order 3 only, the
+solution below implements the Siamese (or De la Loubère) method which works for
+any odd-numbered order greater than or equal to 3. Reference:
+
+ https://en.wikipedia.org/wiki/Siamese_method
+
+=cut
+#==============================================================================
+
+use strict;
+use warnings;
+use Const::Fast;
+use Regexp::Common qw( number );
+
+const my $DEFAULT_ORDER => 3;
+const my $USAGE =>
+"Usage:
+ perl $0 [<order>]
+
+ [<order>] (Odd integer >= 3; defaults to 3) Order of normal magic square
+";
+
+#------------------------------------------------------------------------------
+BEGIN
+#------------------------------------------------------------------------------
+{
+ $| = 1;
+ print "\nChallenge 089, Task #2: Magical Matrix (Perl)\n\n";
+}
+
+#==============================================================================
+MAIN:
+#==============================================================================
+{
+ my $order = parse_command_line();
+
+ print "A normal magic square of order $order:\n\n";
+
+ my $square = build_square($order);
+ my $width = length ($order * $order);
+
+ for my $row (0 .. $#$square)
+ {
+ printf " [ %s ]\n",
+ join ' ', map { sprintf '%*s', $width, $_ } @{ $square->[$row] };
+ }
+}
+
+#------------------------------------------------------------------------------
+sub build_square # Use the Siamese method to construct a
+ # normal magic square with odd order >= 3
+#------------------------------------------------------------------------------
+{
+ my ($order) = @_;
+ my $square;
+
+ push @$square, [ (0) x $order ] for 1 .. $order;
+
+ my $max_idx = $order - 1;
+ my $row = 1;
+ my $col = int( ($order / 2) ) - 1;
+
+ # From the Wikipedia article cited above:
+ #
+ # "... starting from the central box of the first row with the number 1 ...
+ # the fundamental movement for filling the boxes is diagonally up and right
+ # (↗), one step at a time. When a move would leave the square, it is
+ # wrapped around to the last row or first column, respectively.
+ #
+ # "If a filled box is encountered, one moves vertically down one box (↓)
+ # instead, then continuing as before."
+
+ for my $n (1 .. $order * $order)
+ {
+ if ($row == 0 && $col == $max_idx) # At the top right corner:
+ { # Drop down one row
+ $row = 1;
+ }
+ elsif ($row == 0) # On the top edge:
+ { # Wrap around to the last row
+ $row = $max_idx;
+ ++$col;
+ }
+ elsif ($col == $max_idx) # On the right edge:
+ { # Wrap around to first column
+ $col = 0;
+ --$row;
+ }
+ elsif ($square->[$row - 1][$col + 1] > 0)
+ { # Next square is already filled:
+ ++$row; # Drop down one row
+ }
+ else # Default case:
+ { # Move diagonally up and right
+ --$row;
+ ++$col;
+ }
+
+ $square->[$row][$col] = $n;
+ }
+
+ return $square;
+}
+
+#------------------------------------------------------------------------------
+sub parse_command_line
+#------------------------------------------------------------------------------
+{
+ my $args = scalar @ARGV;
+ my $order;
+
+ if ($args == 0)
+ {
+ $order = $DEFAULT_ORDER;
+ }
+ elsif ($args == 1)
+ {
+ $order = $ARGV[0];
+ $order =~ /\A$RE{num}{int}\z/ or error(qq["$order" is not an integer]);
+ $order >= 3 or error("Order $order is too small");
+ }
+ else
+ {
+ error('Too many command-line arguments');
+ }
+
+ return $order;
+}
+
+#------------------------------------------------------------------------------
+sub error
+#------------------------------------------------------------------------------
+{
+ my ($message) = @_;
+
+ die "ERROR: $message\n$USAGE";
+}
+
+###############################################################################
diff --git a/challenge-089/athanasius/raku/ch-1.raku b/challenge-089/athanasius/raku/ch-1.raku new file mode 100644 index 0000000000..8ba3c12844 --- /dev/null +++ b/challenge-089/athanasius/raku/ch-1.raku @@ -0,0 +1,96 @@ +use v6d;
+
+###############################################################################
+=begin comment
+
+Perl Weekly Challenge 089
+=========================
+
+Task #1
+-------
+*GCD Sum*
+
+Submitted by: Mohammad S Anwar
+
+You are given a positive integer $N.
+
+Write a script to sum [ https://en.wikipedia.org/wiki/Greatest_common_divisor |
+GCD] of all possible unique pairs between 1 and $N.
+
+Example 1:
+
+ Input: 3
+ Output: 3
+
+ gcd(1,2) + gcd(1,3) + gcd(2,3)
+
+Example 2:
+
+ Input: 4
+ Output: 7
+
+ gcd(1,2) + gcd(1,3) + gcd(1,4) + gcd(2,3) + gcd(2,4) + gcd(3,4)
+
+=end comment
+###############################################################################
+
+#--------------------------------------#
+# Copyright © 2020 PerlMonk Athanasius #
+#--------------------------------------#
+
+#==============================================================================
+=begin comment
+
+From the Examples, it appears that "all possible unique pairs between 1 and $N"
+should be interpreted to mean:
+
+ all (i, j) such that 1 <= i < j <= N.
+
+In the solution below, the GCD calculation is performed by Raku's inbuilt gcd
+infix operator.
+
+=end comment
+#==============================================================================
+
+subset Positive of Int where * > 0;
+
+#------------------------------------------------------------------------------
+BEGIN
+#------------------------------------------------------------------------------
+{
+ "\nChallenge 089, Task #1: GCD Sum (Raku)\n".put;
+}
+
+#==============================================================================
+sub MAIN
+(
+ Positive:D $N #= A positive integer
+)
+#==============================================================================
+{
+ "Input: $N".put;
+
+ my UInt $sum = 0;
+
+ for 1 .. $N - 1 -> Positive $i
+ {
+ for $i + 1 .. $N -> Positive $j
+ {
+ $sum += $i gcd $j;
+ }
+ }
+
+ "Output: $sum".put;
+}
+
+#------------------------------------------------------------------------------
+sub USAGE()
+#------------------------------------------------------------------------------
+{
+ my Str $usage = $*USAGE;
+
+ $usage ~~ s/ ($*PROGRAM-NAME) /raku $0/;
+ $usage.put;
+}
+
+##############################################################################
diff --git a/challenge-089/athanasius/raku/ch-2.raku b/challenge-089/athanasius/raku/ch-2.raku new file mode 100644 index 0000000000..66c1ba2719 --- /dev/null +++ b/challenge-089/athanasius/raku/ch-2.raku @@ -0,0 +1,145 @@ +use v6d;
+
+###############################################################################
+=begin comment
+
+Perl Weekly Challenge 089
+=========================
+
+Task #2
+-------
+*Magical Matrix*
+
+Submitted by: Mohammad S Anwar
+
+Write a script to display matrix as below with numbers 1 - 9. Please make sure
+numbers are used once.
+
+ [ a b c ]
+ [ d e f ]
+ [ g h i ]
+
+So that it satisfies the following:
+
+ a + b + c = 15
+ d + e + f = 15
+ g + h + i = 15
+ a + d + g = 15
+ b + e + h = 15
+ c + f + i = 15
+ a + e + i = 15
+ c + e + g = 15
+
+=end comment
+###############################################################################
+
+#--------------------------------------#
+# Copyright © 2020 PerlMonk Athanasius #
+#--------------------------------------#
+
+#==============================================================================
+=begin comment
+
+Although the Task is to construct a normal magic square of order 3 only, the
+solution below implements the Siamese (or De la Loubère) method which works for
+any odd-numbered order greater than or equal to 3. Reference:
+
+ https://en.wikipedia.org/wiki/Siamese_method
+
+=end comment
+#==============================================================================
+
+#------------------------------------------------------------------------------
+BEGIN
+#------------------------------------------------------------------------------
+{
+ "\nChallenge 089, Task #2: Magical Matrix (Raku)\n".put;
+}
+
+my UInt constant $DEFAULT-ORDER = 3;
+
+#==============================================================================
+sub MAIN
+(
+ #| (Odd integer >= 3; defaults to 3) Order of normal magic square
+
+ UInt:D $order where { $order >= 3 && $order % 2 == 1 } = $DEFAULT-ORDER
+)
+#==============================================================================
+{
+ "A normal magic square of order $order:\n".put;
+
+ my UInt $width = ($order * $order).chars;
+ my Array[UInt] @square = build-square($order);
+
+ for 0 .. @square.end -> UInt $row
+ {
+ " [ %s ]\n".printf:
+ @square[$row].map( { '%*s'.sprintf: $width, $_ } ).join: ' ';
+ }
+}
+
+#------------------------------------------------------------------------------
+# Use the Siamese method to construct a normal magic square with odd order >= 3
+#
+sub build-square( UInt:D $order --> Array:D[Array:D[UInt:D]] )
+#------------------------------------------------------------------------------
+{
+ my Array[UInt] @square = Array[UInt].new([ 0 xx $order ]) xx $order;
+ my UInt $max-idx = $order - 1;
+ my UInt $row = 1;
+ my UInt $col = ((($order / 2)) - 1).floor;
+
+ # From the Wikipedia article cited above:
+ #
+ # "... starting from the central box of the first row with the number 1 ...
+ # the fundamental movement for filling the boxes is diagonally up and right
+ # (↗), one step at a time. When a move would leave the square, it is
+ # wrapped around to the last row or first column, respectively.
+ #
+ # "If a filled box is encountered, one moves vertically down one box (↓)
+ # instead, then continuing as before."
+
+ for 1 .. $order * $order -> UInt $n
+ {
+ if $row == 0 && $col == $max-idx # At the top right corner:
+ { # Drop down one row
+ $row = 1;
+ }
+ elsif $row == 0 # On the top edge:
+ { # Wrap around to the last row
+ $row = $max-idx;
+ ++$col;
+ }
+ elsif $col == $max-idx # On the right edge:
+ { # Wrap around to first column
+ $col = 0;
+ --$row;
+ }
+ elsif @square[$row - 1; $col + 1] > 0 # Next square is already filled:
+ { # Drop down one row
+ ++$row;
+ }
+ else # Default case:
+ { # Move diagonally up and right
+ --$row;
+ ++$col;
+ }
+
+ @square[$row; $col] = $n;
+ }
+
+ return @square;
+}
+
+#------------------------------------------------------------------------------
+sub USAGE()
+#------------------------------------------------------------------------------
+{
+ my Str $usage = $*USAGE;
+
+ $usage ~~ s/ ($*PROGRAM-NAME) /raku $0/;
+ $usage.put;
+}
+
+##############################################################################
diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 3e01695d95..706fa8062d 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,140 +1,163 @@ { + "xAxis" : { + "type" : "category" + }, + "subtitle" : { + "text" : "[Champions: 26] Last updated at 2020-12-06 13:49:27 GMT" + }, + "title" : { + "text" : "Perl Weekly Challenge - 089" + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + } + } + }, + "chart" : { + "type" : "column" + }, "series" : [ { - "colorByPoint" : 1, "data" : [ { - "drilldown" : "Aaron Smith", "y" : 3, + "drilldown" : "Aaron Smith", "name" : "Aaron Smith" }, { - "y" : 2, "name" : "Abigail", + "y" : 2, "drilldown" : "Abigail" }, { - "name" : "Alexander Pankoff", "y" : 2, - "drilldown" : "Alexander Pankoff" + "drilldown" : "Alexander Pankoff", + "name" : "Alexander Pankoff" }, { + "name" : "Andrew Shitov", "drilldown" : "Andrew Shitov", - "y" : 2, - "name" : "Andrew Shitov" + "y" : 2 }, { - "name" : "Arne Sommer", "y" : 5, - "drilldown" : "Arne Sommer" + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer" + }, + { + "name" : "Athanasius", + "y" : 4, + "drilldown" : "Athanasius" }, { - "drilldown" : "Clifton Wood", "y" : 2, + "drilldown" : "Clifton Wood", "name" : "Clifton Wood" }, { - "name" : "Dave Jacoby", "y" : 3, - "drilldown" : "Dave Jacoby" + "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby" }, { - "name" : "Feng Chang", + "drilldown" : "Feng Chang", "y" : 2, - "drilldown" : "Feng Chang" + "name" : "Feng Chang" }, { - "y" : 2, "name" : "James Smith", + "y" : 2, "drilldown" : "James Smith" }, { + "y" : 2, "drilldown" : "Jan Krnavek", - "name" : "Jan Krnavek", - "y" : 2 + "name" : "Jan Krnavek" }, { "name" : "Joel Crosswhite", - "y" : 2, - "drilldown" : "Joel Crosswhite" + "drilldown" : "Joel Crosswhite", + "y" : 2 }, { + "drilldown" : "Jorg Sommrey", "y" : 2, - "name" : "Jorg Sommrey", - "drilldown" : "Jorg Sommrey" + "name" : "Jorg Sommrey" }, { - "name" : "Kang-min Liu", + "drilldown" : "Kang-min Liu", "y" : 4, - "drilldown" : "Kang-min Liu" + "name" : "Kang-min Liu" }, { - "drilldown" : "Lubos Kolouch", "name" : "Lubos Kolouch", + "drilldown" : "Lubos Kolouch", "y" : 2 }, { - "drilldown" : "Mark Anderson", + "name" : "Mark Anderson", "y" : 2, - "name" : "Mark Anderson" + "drilldown" : "Mark Anderson" }, { "name" : "Miguel Prz", - "y" : 2, - "drilldown" : "Miguel Prz" + "drilldown" : "Miguel Prz", + "y" : 2 }, { "y" : 2, - "name" : "Nuno Vieira", - "drilldown" : "Nuno Vieira" + "drilldown" : "Nuno Vieira", + "name" : "Nuno Vieira" }, { - "name" : "Philip Hood", + "drilldown" : "Philip Hood", "y" : 2, - "drilldown" : "Philip Hood" + "name" : "Philip Hood" }, { - "drilldown" : "Roger Bell_West", "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West", "y" : 5 }, { - "drilldown" : "Simon Green", "y" : 3, + "drilldown" : "Simon Green", "name" : "Simon Green" }, { - "y" : 2, "name" : "Simon Proctor", - "drilldown" : "Simon Proctor" + "drilldown" : "Simon Proctor", + "y" : 2 }, { - "name" : "Stuart Little", "y" : 2, - "drilldown" : "Stuart Little" + "drilldown" : "Stuart Little", + "name" : "Stuart Little" }, { - "drilldown" : "Ulrich Rieke", "name" : "Ulrich Rieke", - "y" : 4 + "y" : 4, + "drilldown" : "Ulrich Rieke" }, { + "y" : 3, "drilldown" : "W. Luis Mochan", - "name" : "W. Luis Mochan", - "y" : 3 + "name" : "W. Luis Mochan" }, { - "drilldown" : "Walt Mankowski", "name" : "Walt Mankowski", + "drilldown" : "Walt Mankowski", "y" : 3 } ], - "name" : "Perl Weekly Challenge - 089" + "name" : "Perl Weekly Challenge - 089", + "colorByPoint" : 1 } ], - "chart" : { - "type" : "column" - }, "legend" : { "enabled" : 0 }, @@ -143,25 +166,9 @@ "text" : "Total Solutions" } }, - "xAxis" : { - "type" : "category" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, - "subtitle" : { - "text" : "[Champions: 25] Last updated at 2020-12-06 13:27:28 GMT" - }, "drilldown" : { "series" : [ { - "id" : "Aaron Smith", "data" : [ [ "Raku", @@ -172,7 +179,8 @@ 1 ] ], - "name" : "Aaron Smith" + "name" : "Aaron Smith", + "id" : "Aaron Smith" }, { "id" : "Abigail", @@ -185,16 +193,17 @@ ] }, { + "id" : "Alexander Pankoff", "name" : "Alexander Pankoff", "data" : [ [ "Perl", 2 ] - ], - "id" : "Alexander Pankoff" + ] }, { + "name" : "Andrew Shitov", "data" : [ [ "Perl", @@ -205,10 +214,10 @@ 1 ] ], - "name" : "Andrew Shitov", "id" : "Andrew Shitov" }, { + "name" : "Arne Sommer", "data" : [ [ "Perl", @@ -223,21 +232,34 @@ 1 ] ], - "name" : "Arne Sommer", "id" : "Arne Sommer" }, { - "name" : "Clifton Wood", + "id" : "Athanasius", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ], + "name" : "Athanasius" + }, + { + "id" : "Clifton Wood", "data" : [ [ "Raku", 2 ] ], - "id" : "Clifton Wood" + "name" : "Clifton Wood" }, { - "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -248,37 +270,37 @@ 1 ] ], - "name" : "Dave Jacoby" + "id" : "Dave Jacoby" }, { - "id" : "Feng Chang", + "name" : "Feng Chang", "data" : [ [ "Raku", 2 ] ], - "name" : "Feng Chang" + "id" : "Feng Chang" }, { "id" : "James Smith", + "name" : "James Smith", "data" : [ [ "Perl", 2 ] - ], - "name" : "James Smith" + ] }, { "id" : "Jan Krnavek", - "name" : "Jan Krnavek", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Jan Krnavek" }, { "name" : "Joel Crosswhite", @@ -291,17 +313,16 @@ "id" : "Joel Crosswhite" }, { + "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] ], - "name" : "Jorg Sommrey", - "id" : "Jorg Sommrey" + "name" : "Jorg Sommrey" }, { - "id" : "Kang-min Liu", "data" : [ [ "Raku", @@ -312,37 +333,38 @@ 2 ] ], - "name" : "Kang-min Liu" + "name" : "Kang-min Liu", + "id" : "Kang-min Liu" }, { "id" : "Lubos Kolouch", - "name" : "Lubos Kolouch", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Lubos Kolouch" }, { - "id" : "Mark Anderson", "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Mark Anderson" }, { - "id" : "Miguel Prz", + "name" : "Miguel Prz", "data" : [ [ "Perl", 2 ] ], - "name" : "Miguel Prz" + "id" : "Miguel Prz" }, { "data" : [ @@ -355,18 +377,17 @@ "id" : "Nuno Vieira" }, { - "id" : "Philip Hood", "name" : "Philip Hood", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Philip Hood" }, { "id" : "Roger Bell_West", - "name" : "Roger Bell_West", "data" : [ [ "Perl", @@ -380,9 +401,11 @@ "Blog", 1 < |
