[MacRuby] #1019: String#gsub performance
MacRuby
ruby-noreply at macosforge.org
Wed Jan 5 07:11:41 PST 2011
#1019: String#gsub performance
----------------------------------+-----------------------------------------
Reporter: yasuimao@… | Owner: lsansonetti@…
Type: defect | Status: new
Priority: major | Milestone: MacRuby 1.0
Component: MacRuby | Keywords:
----------------------------------+-----------------------------------------
Comment(by yasuimao@…):
With 2011/01/05, the test results are the same.
{{{
MacRuby 0.9 2011/01/05 nightly - 8092 words
Test 1 - 34.35 seconds
Test 2 - 69.64 seconds
}}}
With force_encoding, this process took much less time than 0.8 and only
slightly slower than 1.8.7.
Test 1 - gsub
{{{
10.times{File.read("test.txt").force_encoding("UTF-
16BE").gsub!(/\w+/,"test".force_encoding("UTF-16BE"))}
}}}
Test 2 - gsub with block
{{{
10.times{File.read("test.txt").force_encoding("UTF-16BE").gsub!(/\w+/){|x|
x.upcase}}
}}}
'''Results'''
{{{
MacRuby 0.9 2011/01/05 nightly - 8092 words with force_encoding
Test 1 - 0.16 seconds
Test 2 - 0.40 seconds
}}}
The problem of this is that the script file should also be encoded in UTF-
16BE unless adding force_encode (or encode) to each string object created
in the script. (or is there a better way?)
--
Ticket URL: <http://www.macruby.org/trac/ticket/1019#comment:6>
MacRuby <http://macruby.org/>
More information about the macruby-tickets
mailing list