hare

[hare] The Hare programming language
git clone https://git.torresjrjr.com/hare.git
Log | Files | Refs | README | LICENSE

commit e9a77bcfbc79c5aa94992ae674a30fcb133a4876
parent 6b91d39890f5df2e5af32aeccc252b22e60a0bae
Author: Ember Sawady <ecs@d2evs.net>
Date:   Wed,  4 Dec 2024 03:39:59 +0000

Revert "math::random: seed from current time if seed not provided"

This reverts commit 8b5ae05610740739f6412b9458ac21854add6d0d.

see https://lists.sr.ht/~sircmpwn/hare-dev/%3C20241202005225.29526-1-sebastian@sebsite.pw%3E#%3CD62M0NWCWU0J.1D1MUSEO69BVQ@turminal.net%3E

Diffstat:
Mmath/random/random.ha | 15++-------------
1 file changed, 2 insertions(+), 13 deletions(-)

diff --git a/math/random/random.ha b/math/random/random.ha @@ -1,23 +1,12 @@ // SPDX-License-Identifier: MPL-2.0 // (c) Hare authors <https://harelang.org> -use time; - // State for a pseudorandom number generator. export type random = u64; // Initializes a pseudorandom number generator with a given seed. This seed will -// yield the same sequence of psuedo-random numbers if used again. If 'seed' is -// void, the seed is instead determined by the current time (as reported by -// [[time::now]]). -export fn init(seed: (u64 | void) = void) random = { - match (seed) { - case void => - return time::now(time::clock::MONOTONIC).sec: random; - case let r: u64 => - return r; - }; -}; +// yield the same sequence of psuedo-random numbers if used again. +export fn init(seed: u64) random = seed; // Returns a psuedo-random 64-bit unsigned integer. export fn next(r: *random) u64 = {