|
|
|
OCaml, задание типов
|
|||
|---|---|---|---|
|
#18+
Делаю parser.mly. В нем надо явно задать тип для стартового слова грамматики. Почти что методом тыка сообразил что если мне нужно в итоге получить список кодов, то надо писать: Код: sql 1. 2. Где Types.code это Код: sql 1. ocamlyacc выдает .mli в котором: Код: sql 1. 2. Но что-то я не улавливаю смысла этого интерфейса. Что он конкретно объявляет? И как это работает? Почему в %type надо обязательно указывать тип элементов для списка? Почему нельзя просто нетипизированный список сделать? Вообще, меня очень смущает, почему это вдруг вот в этом конкретном месте у OCaml'а возник запрет на угадывание типов? Во всех остальных местах он сам решает какой тип данных лежит, а вот тут ему вдруг надо конкретно указывать?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2012, 21:23 |
|
||
|
OCaml, задание типов
|
|||
|---|---|---|---|
|
#18+
White Owl, про ocamlyacc нашел только это: http://stackoverflow.com/tags/ocamlyacc/info и польскую страницу в вике, из которой ничего не понял. White Owl Код: plaintext 1. Что именно тебе не понятно? operations -- это функция, принимающая первым параметром функцию, читающую из буфера токен, вторым параметром сам буфер и возвращающая список значений типа Types.code. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2012, 09:23 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=38005277&tid=1342083]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
156ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 484ms |

| 0 / 0 |
