summaryrefslogtreecommitdiff
path: root/benchmark/bm_so_count_words.rb
diff options
context:
space:
mode:
Diffstat (limited to 'benchmark/bm_so_count_words.rb')
-rw-r--r--benchmark/bm_so_count_words.rb18
1 files changed, 18 insertions, 0 deletions
diff --git a/benchmark/bm_so_count_words.rb b/benchmark/bm_so_count_words.rb
new file mode 100644
index 0000000000..a24062d258
--- /dev/null
+++ b/benchmark/bm_so_count_words.rb
@@ -0,0 +1,18 @@
+#!/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
+ data = (input.read(4096) or break) << (input.gets || "")
+ nc += data.length
+ nl += data.count("\n")
+ ((data.strip! || data).tr!("\n", " ") || data).squeeze!
+ #nw += data.count(" ") + 1
+end
+# STDERR.puts "#{nl} #{nw} #{nc}"
+