Я пытаюсь создать функцию OCaml, которая добавляет число символов «a» в строке к заданному аргументу.
let rec count_l_in_word (initial : int) (word : string) : int=
if String.length word = 0 then initial else
if word.[0] = 'a' then
count_l_in_word initial+1 (Str.string_after word 1)
else count_l_in_word initial (Str.string_after word 1)
Я получаю сообщение об ошибке в строке 4, говорящее «Это выражение имеет тип string -> int, но здесь используется с типом int». Я не уверен, почему он ожидает, что выражение 'count_l_in_word initial + 1' будет int. Следует ожидать, что целая строка 'count_l_in_word initial + 1 (Str.string_after word 1)' будет int.
Может ли кто-нибудь помочь с этим