Skip to content

Commit

Permalink
fix: add back type variable to Random
Browse files Browse the repository at this point in the history
  • Loading branch information
brekk committed Mar 27, 2024
1 parent 62849ef commit 9754a61
Showing 1 changed file with 9 additions and 9 deletions.
18 changes: 9 additions & 9 deletions prelude/__internal__/Random.mad
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ import LCG from "Random/LCG"

export type Seed

export alias Random = { get :: {} -> Seed, update :: {} -> {} }
export alias Random a = { get :: {} -> Seed, update :: {} -> {} }

/**
* Create a Random instance from an LCG.Seed
* @since 0.23.0
* @example
* gen = generateFromSeed(LCG.mkSeed(100))
*/
generateFromSeed :: Seed -> Random
generateFromSeed :: Seed -> Random a
export generateFromSeed = (initialSeed) => {
seed = initialSeed
get = () => seed
Expand All @@ -33,7 +33,7 @@ export generateFromSeed = (initialSeed) => {
* @example
* generateFromSeed(LCG.mkSeed(100)) == generate(100)
*/
generate :: Integer -> Random
generate :: Integer -> Random a
export generate = pipe(
LCG.mkSeed,
generateFromSeed,
Expand All @@ -45,7 +45,7 @@ export generate = pipe(
* @example
* generateFromSeed(LCG.mkSeedFromString("cool")) == generateFromString("cool")
*/
generateFromString :: String -> Random
generateFromString :: String -> Random a
export generateFromString = pipe(
LCG.mkSeedFromString,
generateFromSeed,
Expand All @@ -58,7 +58,7 @@ export generateFromString = pipe(
* gen = generate(100)
* float(gen)
*/
float :: Random -> Float
float :: Random a -> Float
export float = (r) => {
x = LCG.seedToFloat(r.get())
r.update()
Expand All @@ -72,7 +72,7 @@ export float = (r) => {
* gen = generate(100)
* integer(1, 100, gen)
*/
integer :: Integer -> Integer -> Random -> Integer
integer :: Integer -> Integer -> Random a -> Integer
export integer = (low, high, r) => {
x = LCG.seedToInteger(low, high, r.get())
r.update()
Expand All @@ -86,7 +86,7 @@ export integer = (low, high, r) => {
* gen = generate(100)
* pick([1,2,3,4,5], gen)
*/
pick :: List a -> Random -> Maybe a
pick :: List a -> Random a -> Maybe a
export pick = (xs, r) => {
x = LCG.pickFrom(xs, r.get())
r.update()
Expand All @@ -100,7 +100,7 @@ export pick = (xs, r) => {
* gen = generate(100)
* shuffle([1,2,3,4,5], gen)
*/
shuffle :: List a -> Random -> List a
shuffle :: List a -> Random a -> List a
export shuffle = (xs, r) => {
x = LCG.shuffle(xs, r.get())
r.update()
Expand All @@ -114,7 +114,7 @@ export shuffle = (xs, r) => {
* gen = generate(100)
* boolean(gen)
*/
boolean :: Random -> Boolean
boolean :: Random a -> Boolean
export boolean = (r) => {
x = LCG.seedToBoolean(r.get())
r.update()
Expand Down

0 comments on commit 9754a61

Please sign in to comment.