summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--changelog.md2
-rw-r--r--lib/pure/mersenne.nim12
-rw-r--r--tests/stdlib/tmersenne.nim1
3 files changed, 7 insertions, 8 deletions
diff --git a/changelog.md b/changelog.md
index 6672f7538..a4c5b4e62 100644
--- a/changelog.md
+++ b/changelog.md
@@ -4,6 +4,8 @@
 
 ## Changes affecting backward compatibility
 
+- Deprecated `std/mersenne`
+
 -  `cuchar` now aliases `uint8` instead of `char`
 
 - `repr` now doesn't insert trailing newline; previous behavior was very inconsistent,
diff --git a/lib/pure/mersenne.nim b/lib/pure/mersenne.nim
index 6778e2d62..6ec0d66b4 100644
--- a/lib/pure/mersenne.nim
+++ b/lib/pure/mersenne.nim
@@ -2,24 +2,20 @@
 #
 #            Nim's Runtime Library
 #        (c) Copyright 2015 Nim Contributors
-#
 #    See the file "copying.txt", included in this
 #    distribution, for details about the copyright.
-#
-
 ## The [Mersenne Twister](https://en.wikipedia.org/wiki/Mersenne_Twister)
 ## random number generator.
-##
-## **Note:** The procs in this module work at compile-time.
+## .. note:: The procs in this module work at compile-time.
+
+{.deprecated: "use `std/random` instead.".}
 
 runnableExamples:
   var rand = newMersenneTwister(uint32.high)  ## must be "var"
   doAssert rand.getNum() != rand.getNum()  ## pseudorandom number
-
 ## See also
 ## ========
 ## * `random module<random.html>`_ for Nim's standard random number generator
-
 type
   MersenneTwister* = object
     ## The Mersenne Twister.
@@ -35,6 +31,7 @@ proc newMersenneTwister*(seed: uint32): MersenneTwister =
                                       (result.mt[i-1] shr 30'u32)) + i)
 
 proc generateNumbers(m: var MersenneTwister) =
+
   for i in 0..623:
     var y = (m.mt[i] and 0x80000000'u32) +
             (m.mt[(i+1) mod 624] and 0x7fffffff'u32)
@@ -48,7 +45,6 @@ proc getNum*(m: var MersenneTwister): uint32 =
     generateNumbers(m)
   result = m.mt[m.index]
   m.index = (m.index + 1) mod m.mt.len
-
   result = result xor (result shr 11'u32)
   result = result xor ((result shl 7'u32) and 0x9d2c5680'u32)
   result = result xor ((result shl 15'u32) and 0xefc60000'u32)
diff --git a/tests/stdlib/tmersenne.nim b/tests/stdlib/tmersenne.nim
index 2707aa2f2..54eb7b216 100644
--- a/tests/stdlib/tmersenne.nim
+++ b/tests/stdlib/tmersenne.nim
@@ -7,5 +7,6 @@ template main() =
   doAssert mt.getNum == 1071751096'u32
   doAssert mt.getNum == 3805347140'u32
 
+
 static: main()
 main()