2007-02-13 02:01:19 +03:00
|
|
|
#!/usr/bin/ruby
|
|
|
|
# -*- mode: ruby -*-
|
|
|
|
# $Id: wc-ruby.code,v 1.4 2004/11/13 07:43:32 bfulgham Exp $
|
|
|
|
# http://www.bagley.org/~doug/shootout/
|
|
|
|
# with help from Paul Brannan
|
|
|
|
|
|
|
|
input = open(File.join(File.dirname($0), 'wc.input'), 'rb')
|
|
|
|
|
|
|
|
nl = nw = nc = 0
|
|
|
|
while true
|
2007-09-27 10:46:31 +04:00
|
|
|
tmp = input.read(4096) or break
|
|
|
|
data = tmp << (input.gets || "")
|
2007-02-13 02:01:19 +03:00
|
|
|
nc += data.length
|
|
|
|
nl += data.count("\n")
|
|
|
|
((data.strip! || data).tr!("\n", " ") || data).squeeze!
|
2007-09-27 10:46:31 +04:00
|
|
|
nw += data.count(" ") + 1
|
2007-02-13 02:01:19 +03:00
|
|
|
end
|
|
|
|
# STDERR.puts "#{nl} #{nw} #{nc}"
|
|
|
|
|