Advertisement
Guest User

Untitled

a guest
May 5th, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.66 KB | None | 0 0
  1. my $text = open 'shakespeare.txt';
  2.  
  3. sub channeled {
  4. my Channel $read .= new;
  5. read-worker($text, $read);
  6. my @all-counts = await counter($read);
  7. @all-counts».say;
  8. }
  9.  
  10. sub read-worker($text, $dest) {
  11. start {
  12. CATCH { $dest.fail($_) }
  13. $dest.send($_) for $text.lines;
  14. $dest.close
  15. }
  16. }
  17.  
  18. sub counter($source) {
  19. my int @ic[3] = (0, 0, 0);
  20. start {
  21. for $source.list -> $line {
  22. for $line.comb -> $_ {
  23. when $_ (elem) Vowels { @ic[0]++ }
  24. when /<:Letter>/ { @ic[1]++ }
  25. default { @ic[2]++ }
  26. }
  27. }
  28. @ic
  29. }
  30. }
  31.  
  32. channeled()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement