Rosetta Code/List authors of task descriptions: Difference between revisions

m
→‎{{header|Perl 6}}: Minor updates and tweaks
m (→‎{{header|Perl 6}}: Add comments, style tweaks, minor enhancements)
m (→‎{{header|Perl 6}}: Minor updates and tweaks)
Line 21:
Please '''DO NOT''' add a full output for ''each'' programming language; just show a representative sample. One full list is useful. Multiple full lists just use space and bandwidth.
 
<div style="height:80ex;overflow:scroll;border-style:ridge;"><table border="1" cellpadding="4"><tr><th colspan="2">As of 2017-12-2123 | Total: 10711073 / Tasks: 867 / Draft Tasks: 204206 / By 247 Authors<tr><th>User</th><th>Authored</th></tr>
<tr><td><ul>[[User:2Powers|2Powers]] [[Special:Contributions/2Powers|?]]</ul></td><td><ul><ol><li>2013-05-16 - Draft: [[Names%20to%20numbers|Names to numbers]]</li><li>2013-05-16 - Draft: [[Solving%20coin%20problems|Solving coin problems]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:12.175.32.19|12.175.32.19]] [[Special:Contributions/12.175.32.19|?]]</ul></td><td><ul><ol><li>2009-11-12 - Task: [[Soundex|Soundex]]</li></ol></ul></td></tr>
Line 79:
<tr><td><ul>[[User:Bjrtr|Bjrtr]] [[Special:Contributions/Bjrtr|?]]</ul></td><td><ul><ol><li>2011-08-16 - Task: [[Call%20an%20object%20method|Call an object method]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:BlaiseP|BlaiseP]] [[Special:Contributions/BlaiseP|?]]</ul></td><td><ul><ol><li>2014-07-22 - Task: [[The%20ISAAC%20Cipher|The ISAAC Cipher]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Blue Prawn|Blue Prawn]] [[Special:Contributions/Blue Prawn|?]]</ul></td><td><ul><ol><li>2008-12-06 - Task: [[Bitmap|Bitmap]]</li><li>2008-12-06 - Task: [[Bitmap%2FBresenham%27s%20line%20algorithm|Bitmap/Bresenham's line algorithm]]</li><li>2008-12-06 - Task: [[Bitmap%2FBézier2FB%C3%A9zier%20curves%2FCubic|Bitmap/Bézier curves/Cubic]]</li><li>2008-12-06 - Task: [[Bitmap%2FBézier2FB%C3%A9zier%20curves%2FQuadratic|Bitmap/Bézier curves/Quadratic]]</li><li>2008-12-06 - Task: [[Bitmap%2FMidpoint%20circle%20algorithm|Bitmap/Midpoint circle algorithm]]</li><li>2008-12-06 - Task: [[Bitmap%2FPPM%20conversion%20through%20a%20pipe|Bitmap/PPM conversion through a pipe]]</li><li>2008-12-06 - Task: [[Bitmap%2FWrite%20a%20PPM%20file|Bitmap/Write a PPM file]]</li><li>2010-01-06 - Task: [[Catmull%E2%80%93Clark%20subdivision%20surface|Catmull–Clark subdivision surface]]</li><li>2013-03-28 - Draft: [[Check%20output%20device%20is%20a%20terminal|Check output device is a terminal]]</li><li>2010-09-23 - Task: [[Equilibrium%20index|Equilibrium index]]</li><li>2008-12-07 - Task: [[Image%20convolution|Image convolution]]</li><li>2011-11-05 - Task: [[Last%20Friday%20of%20each%20month|Last Friday of each month]]</li><li>2008-08-08 - Task: [[LZW%20compression|LZW compression]]</li><li>2008-12-07 - Task: [[Median%20filter|Median filter]]</li><li>2009-09-12 - Task: [[N-queens%20problem|N-queens problem]]</li><li>2008-11-13 - Task: [[Percentage%20difference%20between%20images|Percentage difference between images]]</li><li>2010-01-02 - Draft: [[Process%20SMIL%20directives%20in%20XML%20data|Process SMIL directives in XML data]]</li><li>2008-08-26 - Task: [[Shell%20one-liner|Shell one-liner]]</li><li>2008-11-13 - Task: [[Window%20creation%2FX11|Window creation/X11]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Bob9000|Bob9000]] [[Special:Contributions/Bob9000|?]]</ul></td><td><ul><ol><li>2007-01-28 - Task: [[Sort%20an%20integer%20array|Sort an integer array]]</li><li>2007-01-30 - Task: [[Sort%20using%20a%20custom%20comparator|Sort using a custom comparator]]</li><li>2007-02-04 - Task: [[SQL-based%20authentication|SQL-based authentication]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:BR|BR]] [[Special:Contributions/BR|?]]</ul></td><td><ul><ol><li>2010-01-25 - Task: [[Sorting%20algorithms%2FComb%20sort|Sorting algorithms/Comb sort]]</li></ol></ul></td></tr>
Line 109:
<tr><td><ul>[[User:Dkf|Dkf]] [[Special:Contributions/Dkf|?]]</ul></td><td><ul><ol><li>2009-12-28 - Task: [[Accumulator%20factory|Accumulator factory]]</li><li>2009-08-07 - Task: [[Animate%20a%20pendulum|Animate a pendulum]]</li><li>2009-06-14 - Task: [[Animation|Animation]]</li><li>2009-06-12 - Task: [[Averages%2FMedian|Averages/Median]]</li><li>2009-06-13 - Task: [[Averages%2FMode|Averages/Mode]]</li><li>2009-06-16 - Task: [[Cumulative%20standard%20deviation|Cumulative standard deviation]]</li><li>2009-05-13 - Task: [[Echo%20server|Echo server]]</li><li>2010-11-22 - Task: [[Generator%2FExponential|Generator/Exponential]]</li><li>2010-01-21 - Task: [[Hough%20transform|Hough transform]]</li><li>2009-06-01 - Task: [[HTTPS|HTTPS]]</li><li>2009-06-01 - Task: [[HTTPS%2FClient-authenticated|HTTPS/Client-authenticated]]</li><li>2009-06-28 - Task: [[Named%20parameters|Named parameters]]</li><li>2009-06-09 - Task: [[Non-decimal%20radices%2FInput|Non-decimal radices/Input]]</li><li>2009-06-03 - Task: [[Respond%20to%20an%20unknown%20method%20call|Respond to an unknown method call]]</li><li>2012-10-15 - Draft: [[Rosetta%20Code%2FTasks%20sorted%20by%20average%20lines%20of%20code|Rosetta Code/Tasks sorted by average lines of code]]</li><li>2011-04-24 - Task: [[Speech%20synthesis|Speech synthesis]]</li><li>2009-05-18 - Task: [[Stack%20traces|Stack traces]]</li><li>2010-03-23 - Task: [[Sutherland-Hodgman%20polygon%20clipping|Sutherland-Hodgman polygon clipping]]</li><li>2010-10-16 - Task: [[Terminal%20control%2FRinging%20the%20terminal%20bell|Terminal control/Ringing the terminal bell]]</li><li>2009-08-09 - Task: [[Verify%20distribution%20uniformity%2FChi-squared%20test|Verify distribution uniformity/Chi-squared test]]</li><li>2009-09-09 - Task: [[Wireworld|Wireworld]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Dmitry-kazakov|Dmitry-kazakov]] [[Special:Contributions/Dmitry-kazakov|?]]</ul></td><td><ul><ol><li>2008-11-20 - Task: [[Abstract%20type|Abstract type]]</li><li>2008-11-02 - Task: [[Active%20object|Active object]]</li><li>2009-03-22 - Task: [[Arena%20storage%20pool|Arena storage pool]]</li><li>2008-12-07 - Task: [[Bitmap%2FHistogram|Bitmap/Histogram]]</li><li>2008-12-07 - Task: [[Bitmap%2FRead%20a%20PPM%20file|Bitmap/Read a PPM file]]</li><li>2009-08-11 - Task: [[Call%20a%20foreign-language%20function|Call a foreign-language function]]</li><li>2010-08-10 - Task: [[Checkpoint%20synchronization|Checkpoint synchronization]]</li><li>2009-06-08 - Task: [[Create%20an%20object%20at%20a%20given%20address|Create an object at a given address]]</li><li>2008-11-01 - Task: [[Dining%20philosophers|Dining philosophers]]</li><li>2009-06-10 - Task: [[Events|Events]]</li><li>2008-12-07 - Task: [[Grayscale%20image|Grayscale image]]</li><li>2009-06-11 - Task: [[Loops%2FNested|Loops/Nested]]</li><li>2008-10-25 - Task: [[Polymorphic%20copy|Polymorphic copy]]</li><li>2009-02-17 - Task: [[Rendezvous|Rendezvous]]</li><li>2009-08-12 - Task: [[Safe%20addition|Safe addition]]</li><li>2009-08-11 - Task: [[Use%20another%20language%20to%20call%20a%20function|Use another language to call a function]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Domgetter|Domgetter]] [[Special:Contributions/Domgetter|?]]</ul></td><td><ul><ol><li>2016-02-01 - Draft: [[CategoryMonads%3AMonads2FList%20monad|CategoryMonads/List monad]]</li><li>2016-02-01 - Draft: [[Monads%2FMaybe%20monad|Monads/Maybe monad]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Drea|Drea]] [[Special:Contributions/Drea|?]]</ul></td><td><ul><ol><li>2007-10-18 - Task: [[Sieve%20of%20Eratosthenes|Sieve of Eratosthenes]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:DSblizzard|DSblizzard]] [[Special:Contributions/DSblizzard|?]]</ul></td><td><ul><ol><li>2011-02-27 - Task: [[Multisplit|Multisplit]]</li></ol></ul></td></tr>
Line 149:
<tr><td><ul>[[User:Hippyman|Hippyman]] [[Special:Contributions/Hippyman|?]]</ul></td><td><ul><ol><li>2016-08-21 - Draft: [[Color%20wheel|Color wheel]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Hircus|Hircus]] [[Special:Contributions/Hircus|?]]</ul></td><td><ul><ol><li>2009-10-24 - Task: [[Stair-climbing%20puzzle|Stair-climbing puzzle]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Hout|Hout]] [[Special:Contributions/Hout|?]]</ul></td><td><ul><ol><li>2017-05-29 - Task: [[Cartesian%20product%20of%20two%20or%20more%20lists|Cartesian product of two or more lists]]</li><li>2016-02-01 - Draft: [[Monads%2FWriter%20monad|Monads/Writer monad]]</li><li>2016-12-06 - Task: [[Water%20collected%20between%20towers|Water collected between towers]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Hsnarula|Hsnarula]] [[Special:Contributions/Hsnarula|?]]</ul></td><td><ul><ol><li>2013-04-16 - Task: [[Find%20the%20last%20Sunday%20of%20each%20month|Find the last Sunday of each month]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:IanOsgood|IanOsgood]] [[Special:Contributions/IanOsgood|?]]</ul></td><td><ul><ol><li>2009-05-26 - Task: [[Memory%20allocation|Memory allocation]]</li><li>2007-10-03 - Task: [[Sorting%20algorithms%2FQuicksort|Sorting algorithms/Quicksort]]</li></ol></ul></td></tr>
Line 176:
<tr><td><ul>[[User:Lrq3000|Lrq3000]] [[Special:Contributions/Lrq3000|?]]</ul></td><td><ul><ol><li>2015-06-05 - Draft: [[Polynomial%20synthetic%20division|Polynomial synthetic division]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Lupus|Lupus]] [[Special:Contributions/Lupus|?]]</ul></td><td><ul><ol><li>2008-12-11 - Task: [[Factors%20of%20a%20Mersenne%20number|Factors of a Mersenne number]]</li><li>2008-11-27 - Task: [[Roots%20of%20a%20quadratic%20function|Roots of a quadratic function]]</li><li>2008-11-21 - Task: [[Sorting%20algorithms%2FSelection%20sort|Sorting algorithms/Selection sort]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:MagiMaster|MagiMaster]] [[Special:Contributions/MagiMaster|?]]</ul></td><td><ul><ol><li>2011-11-07 - Task: [[Mad%20Libs|Mad Libs]]</li><li>2011-06-07 - Draft: [[Morpion%20solitaire|Morpion solitaire]]</li><li>2014-04-02 - Draft: [[Recursive%20descent%20parser%20generator|Recursive descent parser generator]]</li><li>2011-05-27 - Task: [[Sokoban|Sokoban]]</li><li>2011-06-06 - Task: [[Straddling%20checkerboard|Straddling checkerboard]]</li><li>2011-05-31 - Task: [[VigenèreVigen%C3%A8re%20cipher|Vigenère cipher]]</li><li>2011-05-31 - Task: [[VigenèreVigen%C3%A8re%20cipher%2FCryptanalysis|Vigenère cipher/Cryptanalysis]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Magnus|Magnus]] [[Special:Contributions/Magnus|?]]</ul></td><td><ul><ol><li>2017-08-24 - Draft: [[Finite%20state%20machine|Finite state machine]]</li></ol></ul></td></tr>
<tr><td><ul>[[User:Mahaju|Mahaju]] [[Special:Contributions/Mahaju|?]]</ul></td><td><ul><ol><li>2011-12-20 - Draft: [[Montgomery%20reduction|Montgomery reduction]]</li></ol></ul></td></tr>
Line 278:
 
<lang perl6>use HTTP::UserAgent;
use URI::Escape;
use JSON::Fast;
use Sort::Naturally;
Line 301 ⟶ 302:
#=begin update
 
note 'Retreiving task authorsinformation...';
 
for %cat.keys -> $category {
Line 323 ⟶ 324:
).map({
print "\b" x 150, ' ' x 150, "\b" x 150,
1 + $++, ' ', %cat{$category}, ': ', .[0]<title>;
%tasks{.[0]<title>}<category> = %cat{$category};
%tasks{.[0]<title>}<author> = .[0]<revisions>[0]<user>;
Line 332 ⟶ 333:
 
# Save information to a local file
note "\nTask information saved to local file: {$hashfile.IO.absolute}";
$hashfile.IO.spurt(%tasks.&to-json);
 
Line 340 ⟶ 342:
 
# Convert saved task / author info to an HTML table
note "Building\nBuilding HTML table...";
my $count = +%tasks;
my $taskcnt = +%tasks.grep: *.value.<category> eq %cat<Programming_Tasks>;
Line 364 ⟶ 366:
# and add the date, status and task link to the list in the second cell
$out.print( "<li>{$task.value.<date>} - {$task.value.<category>}",
" [[{uri-encodeescape $task.key}|{$task.key}]]</li>"
)
}
Line 387 ⟶ 389:
}
 
sub uri-query-string (*%fields) { %fields.map({ "{.key}={uri-encodeescape .value}" }).join("&") }
}</lang>
 
sub uri-encode ($str) {
if $str ~~ /<:!ASCII>/ {
my $enc = $str.subst(/<[\x00..\x7f]-[a..zA..Z0..9_.~-]>/, *.ord.fmt('%%%02X'), :g);
return $enc.subst(/<:!ASCII-[\w]>/, *.Str.encode('utf8').list.fmt("%%%02X"), :g ).subst(' ','',:g);
}
$str.subst(/<[\x00..\x7f]-[a..zA..Z0..9_.~-]>/, *.ord.fmt('%%%02X'), :g);
}</lang>
 
;Sample output
10,333

edits