Je suis un guide d'introduction pour OCaml et un programme sur lequel je travaille ne fonctionne pas et je me demandais si je pouvais obtenir une explication.Test en OCaml
let profit_500 : int =
let price = 500 in
let attendees = 120 in
let revenue = price * attendees in
let cost = 18000 + 4 * attendees in
revenue - cost;;
let test() : bool =
(profitTest 500) = profit_500
;; run_test "profit at $5.00" test
Au niveau de la ligne (profitTest 500) = profit_500 Je reçois Erreur: test de bénéfice de valeur non limitée. Quelqu'un peut-il expliquer pourquoi? C'est ma première excursion en OCaml, mais je connais quelques java. Quelqu'un peut-il aussi expliquer pourquoi le dernier ;; va avant run_test au lieu de après profit_500 (ou est-ce la même chose)?
Merci pour l'aide
Je ne connais pas OCAML, mais qu'est-ce que vous attendez de '(profitTest 500) = profit_500' à faire? Ça a l'air très bien. En outre, vous n'avez probablement pas besoin de tous ces 'let ... in's. Je pense que vous devriez être en mesure de regrouper toutes les liaisons sous un seul 'let'. – Carcigenicate
@Carcigenicate OCaml nécessite un 'let' pour chaque liaison. Cette syntaxe est correcte. –
@ElanHamburger Vraiment? C'est malheureux. Ma faute. – Carcigenicate