aboutsummaryrefslogtreecommitdiff
path: root/comparison/OCaml/msort800000.ml
diff options
context:
space:
mode:
authorShinya Sato <shinnya.sato@gmail.com>2022-04-28 21:47:28 +0900
committerShinya Sato <shinnya.sato@gmail.com>2022-04-28 21:47:28 +0900
commit7ea48cd96551247ecc763a5e42404ffa3464d0b0 (patch)
treefd1b63ab48d98a9243d3053522e17e31b9dc033f /comparison/OCaml/msort800000.ml
parent950e2cb2184cb7ead93ba8df691a190598ed242f (diff)
parent429543c748aaf81b2a4207318eb5a05259469b21 (diff)
downloadinpla-7ea48cd96551247ecc763a5e42404ffa3464d0b0.tar.gz
inpla-7ea48cd96551247ecc763a5e42404ffa3464d0b0.zip
Merge branch 'develop'
Diffstat (limited to 'comparison/OCaml/msort800000.ml')
-rw-r--r--comparison/OCaml/msort800000.ml16
1 files changed, 12 insertions, 4 deletions
diff --git a/comparison/OCaml/msort800000.ml b/comparison/OCaml/msort800000.ml
index 1835b98..bbb8de6 100644
--- a/comparison/OCaml/msort800000.ml
+++ b/comparison/OCaml/msort800000.ml
@@ -33,11 +33,19 @@ let rec mkRandList n =
0 -> []
| n -> (Random.int 10000)::(mkRandList (n-1)) ;;
-let main = msort (mkRandList 800000) ;;
+let rec validation alist =
+ let rec validation_cons x blist =
+ match blist with
+ [] -> true
+ | y::ys -> if x<=y then (validation_cons y ys) else false
+ in
+ match alist with
+ [] -> true
+ | x::xs -> validation_cons x xs;;
-(*
-The following error arises:
+let main = validation (msort (mkRandList 800000));;
-Stack overflow during evaluation (looping recursion?).
+(*
+Fatal error: exception Stack_overflow
*)