X-Git-Url: http://nitlanguage.org diff --git a/tests/shootout_nsieve_bytes_alt.nit b/tests/shootout_nsieve_bytes_alt.nit index ab5c703..73b3ee6 100644 --- a/tests/shootout_nsieve_bytes_alt.nit +++ b/tests/shootout_nsieve_bytes_alt.nit @@ -17,20 +17,20 @@ class Bitarray var narr: Bytes init do - for x in [0 .. narr.length[ do narr[x] = 0xFFu8 + for x in [0 .. narr.length[ do narr[x] = 0xFF end fun [](pos: Int): Bool do pos -= 2 - return (narr[pos / 8] & (1u8 << (7 - pos % 8))) != 0u8 + return (narr[pos / 8] & (1 << (7 - pos % 8))) != 0 end fun []=(pos: Int, val: Bool) do pos -= 2 if val then - narr[pos / 8] |= 1u8 << (7 - pos % 8) + narr[pos / 8] |= 1 << (7 - pos % 8) else - narr[pos / 8] &= 0xFFu8 - (1u8 << (7 - pos % 8)) + narr[pos / 8] &= 0xFF - (1 << (7 - pos % 8)) end end end @@ -39,7 +39,7 @@ fun nsieve(n: Int): Int do var count = 0 var b_arrsz = ((n - 1).to_f / 8.0).ceil.to_i - var bitarr = new Bitarray(new Bytes(new NativeString(b_arrsz), b_arrsz, b_arrsz)) + var bitarr = new Bitarray(new Bytes(new CString(b_arrsz), b_arrsz, b_arrsz)) for i in [2 .. n[ do # If self is already false, then no need to check for multiples if not bitarr[i] then continue @@ -55,7 +55,7 @@ end fun test(n: Int) do - var m = 10000.lshift(n) + var m = 10000 << n print("Primes up to {m} {nsieve(m)}") end