Это команда camlmix, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
camlmix - препроцессор, конвертирующий текст со встроенным OCaml
СИНТАКСИС
камлмикс [Параметры ...] файлов...
ОПИСАНИЕ
камлмикс обрабатывает текстовые шаблоны со встроенными OCaml код для повторной генерации текста. От одного
или несколько входных файлов, он генерирует OCaml программа генерации текста и выполняет ее, чтобы
получить результат. Использование опции -весело можно также преобразовать текстовый шаблон в OCaml
функция генерации текста.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
-o выходной
записать сгенерированный текст в файл выходной
-c Только генерируйте программу генерации текста, не выполняйте ее. По умолчанию
программа называется последний файл.ml когда последний файл - последний аргумент файла.
-со файл
укажите название программы генерации текста
-весело порождать OCaml код функции генерации текста из ввода (см. ADVANCED ИСПОЛЬЗОВАНИЕ
ниже)
-e окамлк
установить имя исполняемого файла OCaml
-чистый удалить программу генерации текста после выполнения
-insert ocaml_code
вставить ocaml_code в начале программы генерации текста
-ремикс попробуйте преобразование в синтаксис camlremix
-версия
версия для печати и выход
-Помощь | --Помогите
напечатать справку и выйти (эта страница руководства была написана на основе вывода -Помощь)
BASIC ИСПОЛЬЗОВАНИЕ
Текст заключен в ## маркеры рассматривается как блок OCaml код. Это может быть любой
выражений верхнего уровня, таких как определения или применение функций печати:
Это версия ocaml ## print Sys.ocaml_version ##
Если же линия индикатора OCaml код начинается с = тогда он интерпретируется как выражение типа строка
который будет напечатан, как и остальной текст:
Это версия ocaml ## = Sys.ocaml_version ##
Текстовый блок печатается вместе с оцененным OCaml штук с использованием Распечатать
функция. Включают ### печатать ##.
Белым пространством можно управлять с помощью ##. и . ##:
##. не печатать пробелы слева
. ## не печатайте пробелы до первой новой строки включительно, после
правильно.
ADVANCED ИСПОЛЬЗОВАНИЕ
Директивы
Блоки кода, начинающиеся с @ символ (возможно, предваренный пробелами) являются
директивы для Camlmix. Есть две директивы. включают вставляет файл camlmix и
пропускать пропускает следующий блок. Например
Привет ## @include "world.mlx"; пропустить. ## ## let x = 123 ##!
Конверсия в a текст поколение функция для динамический оказание
Команда -весело вариант, используемый в сочетании с -c и часто -со производит OCaml исходный файл
который обеспечивает функцию оказывать со следующей подписью:
val render:? print: (строка -> unit) -> 'a -> unit
Полиморфный аргумент называется остановить в сгенерированном коде и может использоваться для передачи
аргументы времени выполнения в оказывать функция. Распечатать функция используется для установки начального
значение Camlmix.printer (см. ниже). Значение по умолчанию:
весело s -> print_string s; промыть стандартный вывод
Время выполнения крючки
Программа генерации текста, которая камлмикс генерирует, содержит модуль Камлмикс на
начало, которое можно использовать в кодовых блоках. Этот модуль имеет следующую сигнатуру.
модуль Камлмикс : знак
волна источник : строка ref
волна линия : внутр. ссылка
волна колесница : внутр. ссылка
Расположение первого символа текущего блока в исходном файле.
Номера строк и символов отсчитываются от 1. Эти ссылки обновляются
камлмикс в начале каждого блока.
волна принтер : (строка -> единица) ref
функция печати текстовых блоков
волна print_with : (строка -> единица) -> единица
print_with f заставляет печатать следующий текстовый блок с f вместо
текущий принтер. Его поведение не определено, если он вызывается несколько раз в
тот же блок кода.
волна print_if : bool -> unit
print_if конд печатает следующий текстовый блок, только если условие конд правда. Это
использования print_with внутренне.
конец
Используйте camlmix онлайн с помощью сервисов onworks.net