# See the License for the specific language governing permissions and
# limitations under the License.
-meth nsieve(n: Int): Int
+fun nsieve(n: Int): Int
do
var count = 0
- var array = new String.with_capacity(n)
+ var array: Buffer = new FlatBuffer.with_capacity(n)
for i in [0..n[ do
- array[i] = 'o'
+ array.chars[i] = 'o'
end
for i in [2..n[ do
- if array[i] == 'o' then
+ if array.chars[i] == 'o' then
var j = i * 2
while j < n do
- array[j] = 'x'
+ array.chars[j] = 'x'
j = j + i
end
count = count + 1
return count
end
-meth test(n: Int)
+fun test(n: Int)
do
var m = 10000.lshift(n)
print("Primes up to {m} {nsieve(m)}")