aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-002/shasank-shah/README1
-rw-r--r--challenge-002/shasank-shah/perl/ch-1.pl17
-rw-r--r--challenge-002/shasank-shah/perl/ch-2.pl46
-rw-r--r--challenge-009/feng-chang/README1
-rwxr-xr-xchallenge-009/feng-chang/perl/ch-1.pl16
-rwxr-xr-xchallenge-009/feng-chang/raku/ch-1-one-liner.p64
-rwxr-xr-xchallenge-009/feng-chang/raku/ch-1.p68
-rw-r--r--challenge-013/feng-chang/.gitignore1
-rwxr-xr-xchallenge-013/feng-chang/perl/ch-1.pl (renamed from challenge-013/feng-chang/perl5/ch-1.pl)0
-rwxr-xr-xchallenge-013/feng-chang/perl/ch-2.pl (renamed from challenge-013/feng-chang/perl5/ch-2.pl)0
-rwxr-xr-xchallenge-013/feng-chang/raku/ch-1.p613
-rwxr-xr-xchallenge-013/feng-chang/raku/ch-2.p612
-rwxr-xr-xchallenge-064/feng-chang/raku/ch-1.raku34
-rwxr-xr-xchallenge-064/feng-chang/raku/ch-2.raku27
-rwxr-xr-xchallenge-072/feng-chang/raku/ch-1.raku14
-rwxr-xr-xchallenge-072/feng-chang/raku/ch-1b.raku5
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/.gitignore11
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/LICENSE214
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/README.md35
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/deps.edn14
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/pom.xml44
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/src/tw/weekly/c73.clj12
l---------challenge-073/tyler-wardhaugh/clojure/src/tw/weekly/ch-1.clj1
l---------challenge-073/tyler-wardhaugh/clojure/src/tw/weekly/ch-2.clj1
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/src/tw/weekly/ch_1.clj29
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/src/tw/weekly/ch_2.clj23
-rw-r--r--challenge-073/tyler-wardhaugh/clojure/test/tw/weekly/c73_test.clj17
-rwxr-xr-xchallenge-074/feng-chang/raku/ch-1.raku19
-rw-r--r--challenge-075/bob-lied/README55
-rw-r--r--challenge-075/bob-lied/perl/ch-1.pl51
-rw-r--r--challenge-075/bob-lied/perl/ch-2.pl30
-rw-r--r--challenge-075/bob-lied/perl/lib/CoinSum.pm79
-rw-r--r--challenge-075/bob-lied/perl/lib/LargestRectangleHistogram.pm166
-rw-r--r--challenge-075/bob-lied/perl/t/CoinSum.t24
-rwxr-xr-xchallenge-075/feng-chang/raku/ch-1.raku19
-rwxr-xr-xchallenge-075/feng-chang/raku/ch-2.raku13
-rw-r--r--challenge-076/bob-lied/README55
-rwxr-xr-xchallenge-076/bob-lied/perl/ch-1.pl33
-rwxr-xr-xchallenge-076/bob-lied/perl/ch-2.pl31
-rw-r--r--challenge-076/bob-lied/perl/lib/PrimeSum.pm114
-rw-r--r--challenge-076/bob-lied/perl/lib/Task2.pm38
-rw-r--r--challenge-076/bob-lied/perl/lib/primes-to-10k.txt1229
-rw-r--r--challenge-076/bob-lied/perl/t/PrimeSum.t56
-rw-r--r--challenge-076/bob-lied/perl/t/Task2.t14
-rw-r--r--challenge-076/bob-lied/perl/t/primes-for-testing.txt100
-rw-r--r--challenge-076/dave-jacoby/perl/ch-1.pl56
-rw-r--r--challenge-076/dave-jacoby/perl/ch-2.pl109
-rw-r--r--challenge-076/dave-jacoby/perl/word_grid.txt19
-rw-r--r--challenge-077/ash/blog.txt1
-rw-r--r--challenge-077/ash/blog1.txt1
-rw-r--r--challenge-077/ash/cpp/ch-2.cpp60
-rw-r--r--challenge-077/ash/raku/ch-1.raku11
-rw-r--r--challenge-077/ash/raku/ch-2.raku36
-rw-r--r--challenge-077/ash/xslt/ch-2.xml25
-rw-r--r--challenge-077/ash/xslt/ch-2.xslt41
-rwxr-xr-xchallenge-077/dave-jacoby/perl/ch-1.pl63
-rwxr-xr-xchallenge-077/dave-jacoby/perl/ch-2.pl71
-rwxr-xr-xchallenge-077/e-choroba/perl/ch-1.pl82
-rwxr-xr-xchallenge-077/e-choroba/perl/ch-2.pl111
-rwxr-xr-xchallenge-077/feng-chang/raku/ch-1.raku29
-rwxr-xr-xchallenge-077/feng-chang/raku/ch-2.raku25
-rwxr-xr-xchallenge-077/jo-37/perl/ch-1.pl106
-rwxr-xr-xchallenge-077/jo-37/perl/ch-2.pl50
-rw-r--r--challenge-077/mark-anderson/raku/ch-1.raku11
-rw-r--r--challenge-077/mark-anderson/raku/ch-2.raku39
-rw-r--r--challenge-077/mohammad-anwar/perl/ch-1.pl58
-rw-r--r--challenge-077/mohammad-anwar/perl/ch-1.t56
-rw-r--r--challenge-077/mohammad-anwar/perl/ch-2.pl105
-rw-r--r--challenge-077/mohammad-anwar/perl/ch-2.t112
-rw-r--r--challenge-077/mohammad-anwar/raku/ch-1.raku44
-rw-r--r--challenge-077/mohammad-anwar/raku/ch-1.t45
-rw-r--r--challenge-077/mohammad-anwar/raku/ch-2.raku89
-rw-r--r--challenge-077/mohammad-anwar/raku/ch-2.t99
-rw-r--r--challenge-077/roger-bell-west/blog.txt1
-rwxr-xr-xchallenge-077/roger-bell-west/perl/ch-1.pl30
-rwxr-xr-xchallenge-077/roger-bell-west/perl/ch-2.pl45
-rwxr-xr-xchallenge-077/roger-bell-west/python/ch-1.py27
-rwxr-xr-xchallenge-077/roger-bell-west/python/ch-2.py33
-rwxr-xr-xchallenge-077/roger-bell-west/raku/ch-1.p618
-rwxr-xr-xchallenge-077/roger-bell-west/raku/ch-2.p643
-rw-r--r--challenge-077/simon-proctor/raku/ch-1.raku15
-rw-r--r--challenge-077/simon-proctor/raku/ch-2.raku30
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/README.md8
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/deps.edn8
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/pom.xml16
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/resources/matrix1.txt3
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/resources/matrix2.txt4
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/src/tw/weekly/c77.clj12
l---------challenge-077/tyler-wardhaugh/clojure/src/tw/weekly/ch-1.clj1
l---------challenge-077/tyler-wardhaugh/clojure/src/tw/weekly/ch-2.clj1
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/src/tw/weekly/ch_1.clj39
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/src/tw/weekly/ch_2.clj50
-rw-r--r--challenge-077/tyler-wardhaugh/clojure/test/tw/weekly/c77_test.clj18
-rw-r--r--challenge-077/ulrich-rieke/perl/ch-2.pl73
-rw-r--r--challenge-077/ulrich-rieke/raku/ch-1.raku15
-rw-r--r--challenge-077/walt-mankowski/blog.txt1
-rw-r--r--challenge-077/walt-mankowski/perl/ch-1.pl65
-rw-r--r--challenge-077/walt-mankowski/perl/ch-2.pl75
-rw-r--r--challenge-077/walt-mankowski/perl/test1.txt3
-rw-r--r--challenge-077/walt-mankowski/perl/test2.txt4
-rw-r--r--members.json1
-rw-r--r--stats/pwc-challenge-002.json393
-rw-r--r--stats/pwc-challenge-009.json383
-rw-r--r--stats/pwc-challenge-013.json406
-rw-r--r--stats/pwc-challenge-064.json437
-rw-r--r--stats/pwc-challenge-072.json583
-rw-r--r--stats/pwc-challenge-074.json347
-rw-r--r--stats/pwc-challenge-075.json606
-rw-r--r--stats/pwc-challenge-076.json642
-rw-r--r--stats/pwc-current.json501
-rw-r--r--stats/pwc-language-breakdown-summary.json72
-rw-r--r--stats/pwc-language-breakdown.json583
-rw-r--r--stats/pwc-leaders.json802
-rw-r--r--stats/pwc-summary-1-30.json54
-rw-r--r--stats/pwc-summary-121-150.json106
-rw-r--r--stats/pwc-summary-151-180.json56
-rw-r--r--stats/pwc-summary-181-210.json40
-rw-r--r--stats/pwc-summary-31-60.json36
-rw-r--r--stats/pwc-summary-61-90.json116
-rw-r--r--stats/pwc-summary-91-120.json108
-rw-r--r--stats/pwc-summary.json86
121 files changed, 8181 insertions, 3095 deletions
diff --git a/challenge-002/shasank-shah/README b/challenge-002/shasank-shah/README
new file mode 100644
index 0000000000..3d2d911c6e
--- /dev/null
+++ b/challenge-002/shasank-shah/README
@@ -0,0 +1 @@
+Solution by Shasank Shah
diff --git a/challenge-002/shasank-shah/perl/ch-1.pl b/challenge-002/shasank-shah/perl/ch-1.pl
new file mode 100644
index 0000000000..e9223cac3b
--- /dev/null
+++ b/challenge-002/shasank-shah/perl/ch-1.pl
@@ -0,0 +1,17 @@
+#! /usr/bin/perl
+use v5.22;
+say 'Casting with addition';
+print 'Number? ';
+say 0 + <>;
+
+say 'Regex substitution';
+print 'Number? ';
+say <> =~ s/^0*(\d+)$/$1/r;
+
+say 'Explicit integer casting';
+print 'Number? ';
+say int <>;
+
+say 'Using map and a flip flop';
+print 'Number? ';
+say join '', map { /[^0]/ .. /\n/ ? $_ : () } split //, <>;
diff --git a/challenge-002/shasank-shah/perl/ch-2.pl b/challenge-002/shasank-shah/perl/ch-2.pl
new file mode 100644
index 0000000000..1d67909982
--- /dev/null
+++ b/challenge-002/shasank-shah/perl/ch-2.pl
@@ -0,0 +1,46 @@
+#! /usr/bin/perl
+use v5.22;
+my @to_table = ( 0 .. 9, 'A' .. 'Y');
+my %from_table;
+while (my ($index, $element) = each @to_table) {
+ $from_table{$element} = $index;
+}
+
+sub convert_to {
+ my $x = shift; my $pow = 1; my @ret;
+ do {
+ my $digit = $x % 35;
+ unshift @ret, $to_table[$digit];
+ $x -= $digit;
+ $x /= 35;
+ } while $x > 0;
+ return join '', @ret
+}
+
+sub convert_from {
+ my $x; my $pow =1;
+ for (reverse split //, shift) {
+ $x += $from_table{$_} * $pow;
+ $pow *= 35;
+ }
+ return $x
+}
+
+my $command = shift;
+if ($command eq 'to') {
+ my $arg = shift;
+ die 'Need a number to convert' unless $arg;
+ die 'Improper base10 number' unless $arg =~ /^\d+$/;
+ say convert_to($arg)
+} elsif ($command eq 'from') {
+ my $arg = shift;
+ die 'Need a number to convert' unless $arg;
+ die 'Improper base35 number' unless $arg =~ /^[0-9A-Y]+$/;
+ say convert_from($arg)
+} else {
+ say <<"EOF"
+ USAGE: $0 [ to | from ]
+ to - will convert a base10 number to base35
+ from - will convert a base35 number to base10
+EOF
+}
diff --git a/challenge-009/feng-chang/README b/challenge-009/feng-chang/README
new file mode 100644
index 0000000000..74e56de3ed
--- /dev