Rosetta Code/Find unimplemented tasks: Difference between revisions
Content added Content deleted
SqrtNegInf (talk | contribs) (→{{header|Perl}}: rehabilitated task) |
|||
Line 1,424: | Line 1,424: | ||
=={{header|Perl}}== |
=={{header|Perl}}== |
||
<lang perl>use LWP::UserAgent; |
|||
Using JSON (not parsed, just Regex.) |
|||
my $ua = LWP::UserAgent->new; |
|||
$ua->agent(''); |
|||
⚫ | |||
⚫ | |||
sub get { $ua->request( HTTP::Request->new( GET => shift))->content } |
|||
my $lang = shift |
|||
or die "No language given.\n"; |
|||
sub |
sub tasks { |
||
⚫ | |||
⚫ | |||
my $fmt = 'http://www.rosettacode.org/mw/api.php?' . |
|||
sub tasks |
|||
⚫ | |||
⚫ | |||
my @tasks; |
my @tasks; |
||
my $json = get |
my $json = get(sprintf $fmt, $category); |
||
while (1) { |
|||
push @tasks, $json =~ /"title":"(.+?)"\}/g; |
|||
$json =~ /" |
$json =~ /"gcmcontinue":"(.+?)"\}/ or last; |
||
$json = get |
$json = get(sprintf $fmt . '&gcmcontinue=%s', $category, enc $1); |
||
} |
|||
$category, urlencode $1;} |
|||
@tasks; |
|||
} |
|||
my |
my %language = map {$_, 1} tasks shift || 'perl'; |
||
$language{$_} or print "$_\n" foreach tasks('Programming_Tasks'), tasks('Draft_Programming_Tasks');</lang> |
|||
my %lang = map {$_, 1} tasks $lang |
|||
or die "No such category.\n"; |
|||
$lang{$_} or print "$_\n" |
|||
foreach @all;</lang> |
|||
'''See also:''' [[User:ImplSearchBot/Code]] |
'''See also:''' [[User:ImplSearchBot/Code]] |