aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Logan <nlogan@gmail.com>2019-04-10 23:16:27 -0400
committerNick Logan <nlogan@gmail.com>2019-04-10 23:23:03 -0400
commitec34b1f4e29bb6ece971838525231cd81b92cad3 (patch)
tree2f9d435b5ae1ff0da22f564361184ebad83bd261
parent08421ab29ca411cc43513682868aebb4dde67fc4 (diff)
downloadperlweeklychallenge-club-ec34b1f4e29bb6ece971838525231cd81b92cad3.tar.gz
perlweeklychallenge-club-ec34b1f4e29bb6ece971838525231cd81b92cad3.tar.bz2
perlweeklychallenge-club-ec34b1f4e29bb6ece971838525231cd81b92cad3.zip
Add note explaining lack of best practices
-rw-r--r--challenge-001/nick-logan/perl5/ch-1.pl2
-rw-r--r--challenge-001/nick-logan/perl5/ch-2.pl4
-rw-r--r--challenge-001/nick-logan/perl6/ch-1.p62
-rw-r--r--challenge-001/nick-logan/perl6/ch-2.p64
-rw-r--r--challenge-002/nick-logan/perl5/ch-1.pl2
-rw-r--r--challenge-002/nick-logan/perl5/ch-2.pl2
-rw-r--r--challenge-002/nick-logan/perl6/ch-1.p62
-rw-r--r--challenge-002/nick-logan/perl6/ch-2.p62
-rw-r--r--challenge-002/nick-logan/perl6/to-base35.p66
9 files changed, 20 insertions, 6 deletions
diff --git a/challenge-001/nick-logan/perl5/ch-1.pl b/challenge-001/nick-logan/perl5/ch-1.pl
index c35822d44b..e20ce33987 100644
--- a/challenge-001/nick-logan/perl5/ch-1.pl
+++ b/challenge-001/nick-logan/perl5/ch-1.pl
@@ -1 +1,3 @@
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+
print((($_ eq "e") and uc($_) or $_)) for split("", "Perl Weekly Challenge")
diff --git a/challenge-001/nick-logan/perl5/ch-2.pl b/challenge-001/nick-logan/perl5/ch-2.pl
index cb8a9074af..00372d5c38 100644
--- a/challenge-001/nick-logan/perl5/ch-2.pl
+++ b/challenge-001/nick-logan/perl5/ch-2.pl
@@ -1,3 +1,3 @@
-print((join( "", (!($_ % 3) and "Fizz" or ""), (!($_ % 5) and "Buzz" or "") ) or $_), "\n") for 1..20;
-
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+print((join( "", (!($_ % 3) and "Fizz" or ""), (!($_ % 5) and "Buzz" or "") ) or $_), "\n") for 1..20;
diff --git a/challenge-001/nick-logan/perl6/ch-1.p6 b/challenge-001/nick-logan/perl6/ch-1.p6
index c35822d44b..e20ce33987 100644
--- a/challenge-001/nick-logan/perl6/ch-1.p6
+++ b/challenge-001/nick-logan/perl6/ch-1.p6
@@ -1 +1,3 @@
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+
print((($_ eq "e") and uc($_) or $_)) for split("", "Perl Weekly Challenge")
diff --git a/challenge-001/nick-logan/perl6/ch-2.p6 b/challenge-001/nick-logan/perl6/ch-2.p6
index cb8a9074af..00372d5c38 100644
--- a/challenge-001/nick-logan/perl6/ch-2.p6
+++ b/challenge-001/nick-logan/perl6/ch-2.p6
@@ -1,3 +1,3 @@
-print((join( "", (!($_ % 3) and "Fizz" or ""), (!($_ % 5) and "Buzz" or "") ) or $_), "\n") for 1..20;
-
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+print((join( "", (!($_ % 3) and "Fizz" or ""), (!($_ % 5) and "Buzz" or "") ) or $_), "\n") for 1..20;
diff --git a/challenge-002/nick-logan/perl5/ch-1.pl b/challenge-002/nick-logan/perl5/ch-1.pl
index f7787b8a04..ffbf7bc003 100644
--- a/challenge-002/nick-logan/perl5/ch-1.pl
+++ b/challenge-002/nick-logan/perl5/ch-1.pl
@@ -1 +1,3 @@
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+
my @ARGV = do { sub eval($_) { &EVAL($_) }; eval( ("0" and q|@*ARGS| or q|@ARGV|) ) }; print("$_\n") for map &{ sub ($_) { /^0(0|1|2|3|4|5|6|7|8|9)+/ and (0+$_) or $_ } }.(), @ARGV;
diff --git a/challenge-002/nick-logan/perl5/ch-2.pl b/challenge-002/nick-logan/perl5/ch-2.pl
index f6d6226cda..95628189ed 100644
--- a/challenge-002/nick-logan/perl5/ch-2.pl
+++ b/challenge-002/nick-logan/perl5/ch-2.pl
@@ -1,3 +1,5 @@
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+
my @ARGV = do { sub eval { chomp &EVAL(@_) }; eval( ("0" and q|@*ARGS| or q|@ARGV|) ) };
my ($state, $result, $dict, $base35) = (1, "", {}, @ARGV[0]);
$dict{$_} = $_ for "1".."9";
diff --git a/challenge-002/nick-logan/perl6/ch-1.p6 b/challenge-002/nick-logan/perl6/ch-1.p6
index f7787b8a04..ffbf7bc003 100644
--- a/challenge-002/nick-logan/perl6/ch-1.p6
+++ b/challenge-002/nick-logan/perl6/ch-1.p6
@@ -1 +1,3 @@
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+
my @ARGV = do { sub eval($_) { &EVAL($_) }; eval( ("0" and q|@*ARGS| or q|@ARGV|) ) }; print("$_\n") for map &{ sub ($_) { /^0(0|1|2|3|4|5|6|7|8|9)+/ and (0+$_) or $_ } }.(), @ARGV;
diff --git a/challenge-002/nick-logan/perl6/ch-2.p6 b/challenge-002/nick-logan/perl6/ch-2.p6
index f6d6226cda..95628189ed 100644
--- a/challenge-002/nick-logan/perl6/ch-2.p6
+++ b/challenge-002/nick-logan/perl6/ch-2.p6
@@ -1,3 +1,5 @@
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+
my @ARGV = do { sub eval { chomp &EVAL(@_) }; eval( ("0" and q|@*ARGS| or q|@ARGV|) ) };
my ($state, $result, $dict, $base35) = (1, "", {}, @ARGV[0]);
$dict{$_} = $_ for "1".."9";
diff --git a/challenge-002/nick-logan/perl6/to-base35.p6 b/challenge-002/nick-logan/perl6/to-base35.p6
index 683acda914..e4f7e98a95 100644
--- a/challenge-002/nick-logan/perl6/to-base35.p6
+++ b/challenge-002/nick-logan/perl6/to-base35.p6
@@ -1,3 +1,5 @@
+# WARNING: this polyglot breaks best practices of both Perl 5 and Perl 6 in order to run on both
+
# bin/to-base35
sub to_int($_) { my @i = split(/"."/, $_[0]); @i[0] };
my @ARGV = do { sub eval { chomp &EVAL(@_) }; eval( ("0" and q|@*ARGS| or q|@ARGV|) ) };
@@ -5,7 +7,7 @@ my ($result, $dict, $base10) = ("", {}, @ARGV[0]);
$dict{$_} = $_ for "1".."9";
$dict{ord($_) - 55} = $_ for "A".."Y";
while ($base10 > 0) {
- $result = join("", $dict{to_int($base10 % 35)}, $result);
- $base10 = to_int($base10 / 35);
+ $result = join("", $dict{to_int($base10 % 35)}, $result);
+ $base10 = to_int($base10 / 35);
}
print("$result\n");