summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md6
-rw-r--r--liblali.c2
2 files changed, 4 insertions, 4 deletions
diff --git a/README.md b/README.md
index bfaad4c..ad84609 100644
--- a/README.md
+++ b/README.md
@@ -65,11 +65,11 @@ operations `<`, `>`:
#### Random number operation
-`(random [number])` takes no or one number argument, returns a random number below
-`number` until 0.
+`(random [number])` takes no or one number argument, returns a random number from
+0 until `number`.
(random) ; +747528572
- (random +2) ; returns +0 or +1
+ (random +1) ; returns +0 or +1
### Processing operations
diff --git a/liblali.c b/liblali.c
index 82c900c..b54aeb8 100644
--- a/liblali.c
+++ b/liblali.c
@@ -956,7 +956,7 @@ Object *primitiveRandom(Object **args, GC_PARAM) {
if (*args == nil)
sprintf(string, "+%ld", nrandom);
else
- sprintf(string, "+%ld", nrandom % atol((*args)->car->string));
+ sprintf(string, "+%ld", nrandom % (atol((*args)->car->string) + 1));
return newNumber(string, GC_ROOTS);
}