summaryrefslogtreecommitdiff
path: root/files/practicum/Random.dcl
diff options
context:
space:
mode:
Diffstat (limited to 'files/practicum/Random.dcl')
-rw-r--r--files/practicum/Random.dcl22
1 files changed, 22 insertions, 0 deletions
diff --git a/files/practicum/Random.dcl b/files/practicum/Random.dcl
new file mode 100644
index 0000000..cc4f646
--- /dev/null
+++ b/files/practicum/Random.dcl
@@ -0,0 +1,22 @@
+definition module Random
+
+// **************************************************************************************************
+//
+// General utility for random number generation.
+//
+// This module has been written in Clean 1.3.2 and uses the Clean Standard Object I/O library 1.2
+//
+// **************************************************************************************************
+
+import StdTime
+
+:: RandomSeed
+
+nullRandomSeed :: RandomSeed
+// nullRandomSeed generates a useless RandomSeed (random nullRandomSeed = (0,nullRandomSeed)).
+
+getNewRandomSeed:: !*env -> (!RandomSeed, !*env) | TimeEnv env
+// GetNewRandomSeed generates a useful RandomSeed, using the current time.
+
+random :: !RandomSeed -> .(!Int, !RandomSeed)
+// Given a RandomSeed, Random generates a random number and a new RandomSeed.