donc je le code suivant:OCaml - « module » ou « ouvert » ou [opt_rec] attendu après « nous » erreur
let rec take k list acc = match list with
| [] -> failwith "empty list"
| x::xs when k = 0 -> x, acc @ xs
| x::xs -> take (k - 1) xs (acc @ [x]);;
let rec random_p l acc = match l with
| [] -> acc
| [x] -> acc @ [x]
| x::xs -> let r = (Random.int (List.length l)) in let val, rest = take r (x::xs) [] in random_p rest ([email protected][val])
Cependant, lorsque je tente d'entrer dans la deuxième fonction, je reçois l'erreur
Parse error: "module" or "open" or [opt_rec] expected after "let" (in [expr])
avec le second 'let' dans la dernière ligne soulignée comme source de l'erreur. Je l'ai essayé avec et sans la fonction Random au préalable, mais je reçois toujours cette erreur. Je ne peux pas déterminer quel est le problème, je l'ai utilisé et laissé pratiquement de la même manière dans un autre code sans problème.
Cela semble être correct - merci beaucoup! – Jayem