Как именно вы используете модуль в Ocaml? - PullRequest
0 голосов
/ 10 февраля 2019

Я хочу использовать модуль Stack .

Насколько я понимаю, он является частью библиотеки stdlib.Я выполнил команду ocamlbuild -package stdlib <myfile>.native, как предложено в другом посте.Я также добавил open Stdlib.Stack вверху моего файла для загрузки модуля.

Я все еще получаю ошибку Error: Unbound value stack

1 Ответ

0 голосов
/ 10 февраля 2019

Имена модулей в OCaml пишутся с большой буквы.Ваше сообщение об ошибке предполагает, что вы используете имя stack.Это не имя модуля, и в модуле Stack отсутствует имя stack.

Трудно сказать больше, не видя ваш код.

Вот некоторыекод, который манипулирует стеком:

# let mystack = Stack.create ();;
val mystack : '_weak1 Stack.t = <abstr>
# Stack.push "greetings" mystack;;
- : unit = ()
# Stack.length mystack;;
- : int = 1
# Stack.pop mystack;;
- : string = "greetings"
...