Публикации по теме 'ocaml'


Начало работы с atdgen и bucklescript
Atdgen - это проект по созданию типов и структур данных, которые можно сериализовать в JSON. Это очень удобно при взаимодействии между несколькими процессами, создании REST API или использовании объектов JSON из других инструментов. Его можно сравнить с схемой JSON или буферами протокола , но с более богатыми типами и большим количеством функций. Идея состоит в том, чтобы записать список типов в файл спецификации, файл .atd. Затем, запустив atdgen, можно сгенерировать код OCaml или..

Ссылочная прозрачность считается вредной концепцией
Обычно я вижу ссылку на Referential Transparency (RT) в каком-нибудь посте по крайней мере раз в месяц в своем ежедневном троллинге блогов и форм по языкам программирования. Я думаю, что RT — вредная концепция в сообществе FP, как инкапсуляция была в сообществе OO. Вредный в том смысле, что этот термин используется для четкого технического определения, а затем используется для создания диких необоснованных заявлений, которые никоим образом не поддерживаются лежащим в основе техническим..

Вопросы по теме 'ocaml'

Является ли это разумной реализацией квадратичной функции Безье в OCaml?
Друг наткнулся на функцию квадратичной кривой Безье в своей кодовой базе, которая использовала гигантское крысиное гнездо таблицы переключения для выполнения вычислений. Он предложил мне найти одно короткое выражение, которое позволило бы ему...
514 просмотров
schedule 30.01.2024

Синтаксис OCaml для передачи настраиваемых объектов в качестве параметров
Я пытаюсь разобраться в синтаксисе языка OCaml, и у меня возникли проблемы с применением некоторых структур ООП. Моя цель с приведенным ниже кодом - создать панель классов, унаследованную от виртуального класса foo. Виртуальный класс содержит три...
659 просмотров
schedule 07.09.2023

Шаблон проектирования посредника в OCaml
Я пытаюсь выполнить взаимную привязку между двумя классами в OCaml (а-ля шаблон посредника) и получаю сообщение об ошибке при компиляции. class virtual ['mediator] colleague mIn = object val m = mIn method virtual getmediator : 'mediator end;;...
231 просмотров
schedule 22.04.2022

OCaml: установка модулей
Я хочу использовать OCaml для создания наборов данных и сравнения между ними. Я видел документацию для типов модулей, таких как Set.OrderType , Set.Make и т. д., но я не могу понять, как инициализировать набор или как-то иначе использовать их.
13132 просмотров
schedule 23.02.2024

В чем разница между этими тремя вызовами fscanf в OCaml?
Я написал небольшой фрагмент кода, чтобы просто пропустить num_lines строк во входном файле (распечатав строки для целей отладки. Вот две вещи, которые я пробовал, но они не сработали: for i = 0 to num_lines do print_endline (fscanf infile...
597 просмотров
schedule 28.10.2023

Ошибка синтаксического анализа ocamlyacc: какой токен?
Использую окамляцк и окамллекс. У меня есть ошибка в грамматике, которая сигнализирует о настраиваемом исключении. Пока что я могу заставить его сообщить об ошибке: | error { raise (Parse_failure (string_of_position (symbol_start_pos ()))) }...
7671 просмотров
schedule 11.06.2022

Lisp, OCaml или что за Рунге Кутта?
Какой язык вы бы предложили для решения системы с: дифференциальные уравнения первого порядка комплексные переменные N-размеры с использованием Рунге Кутта 4-го порядка или подобного. Скорость имеет много значение, но ею можно...
1669 просмотров
schedule 30.08.2022

Как получить доступ к типу данных ocaml и рекурсивно изменить значение?
Я изучаю Ocaml и совершенно потерял, как с этим бороться. Вот пример. скажем type xml = Element of tag * xml list | CharData of string;; и я хочу получить доступ к значению тега и изменить его. Как я могу думать, это match xml...
843 просмотров
schedule 15.02.2023

Сопоставление с функциями в OCaml?
Можно ли использовать сопоставление с образцом для указанных функций напрямую или с некоторыми эксплойтами, которые не требуют указания типа для каждой функции, которая мне нужна? Просто чтобы лучше объяснить, предположим, что у меня есть тип вроде...
650 просмотров
schedule 27.08.2022

Сопоставление шаблонов OCaml со встроенными типами
Я пытаюсь написать полиморфную функцию, которая должна делать что-то немного другое в зависимости от типа параметра. Есть ли способ, которым я могу сопоставить шаблон с типом объекта, используя встроенные типы? Я думаю о чем-то в этом роде: let...
1050 просмотров
schedule 08.08.2022

Самоанализ функциональных языков программирования
Я делаю набросок дизайна чего-то (машинное обучение функций), для чего предпочтительно нужен функциональный язык программирования, а также самоанализ, в частности, способность исследовать собственный код программы в каком-то хорошо управляемом...
2590 просмотров

Перечисление всех пар, которые можно построить из двух ленивых списков в OCaml
Я пытаюсь перечислить набор всех пар, состоящих из элементов из двух ленивых списков (первый элемент из первого списка, второй элемент из второго списка) в OCaml, используя обычную идею диагонализации. Идея, строго говоря, выглядит примерно так:...
787 просмотров
schedule 12.01.2024

Различия между OCaml 2 и 3
Я заинтересован в изучении этого языка, но кажется, что учебников и книг на эту тему очень мало. Я нашел только одну подходящую книгу на эту тему (Разработка приложений с помощью Objective Caml), которая была бы абсолютно идеальной, но проблема в...
289 просмотров
schedule 27.06.2022

возвращать значения из файла - ocaml
Я пытаюсь прочитать файл и вернуть элемент, прочитанный из файла, в качестве входных данных для другой функции. Как я могу вернуть значение при чтении из файла?? Я перепробовал все, что знаю, и все еще безнадежно потерян. Мой код выглядит...
400 просмотров
schedule 23.07.2023

Вызов внешней программы из OCaml
Я новичок в OCaml и пытался понять, как вызвать внешнюю программу из OCaml. Я следил за документацией здесь и сделал следующий вызов: Unix.execv "cat text_file";; Это возвращает следующее: string array -> 'a = <fun>...
1737 просмотров
schedule 09.03.2023

Развернуть кортеж в OCaml
Есть ли способ применить функцию к членам кортежа в качестве аргументов функции? Или, если нет, могу ли я как-то создать функцию с произвольным количеством аргументов и в ее теле применить к «хвосту» какую-то другую функцию, поскольку это были бы ее...
1711 просмотров
schedule 05.09.2023

Любые привязки OCaml для GtkGlExt? Если нет, то как я могу их написать?
В настоящее время у меня есть две отдельные программы: (1) графический интерфейс GTK; (2) приложение Glut с 3D-графикой openGL. Тем не менее, я хотел бы, чтобы часть openGL была встроена в графический интерфейс, который у меня есть. Я заметил,...
355 просмотров
schedule 23.05.2022

Кроссплатформенный функциональный язык для Objective-C
РЕДАКТИРОВАТЬ: Потратив несколько часов на изучение этого вопроса, я не думаю, что найду что-то, что действительно в конечном итоге сэкономит мне время по сравнению с количеством времени и усилий, затрачиваемых на поиск подходящего языка, подходящих...
1631 просмотров

OcaIDE не видит инструменты JoCaml
У меня возникла проблема при использовании OcaIDE в режиме ocamlbuild. Я пытаюсь скомпилировать собственные исходники JoCaml . Согласно руководству по JoCaml (внизу страницы), чтобы использовать ocamlbuild с JoCaml, я просто нужно добавить...
568 просмотров
schedule 08.09.2023

camlp4 : расширитель котировок недоступен
Файл test.ml содержит только одну строку: let foo = <:expr< foo >> Затем я применяю camlp4 к этому файлу с помощью этой командной строки: camlp4o pa_extend.cmo test.ml Результат: File "test.ml", line 1, characters...
272 просмотров
schedule 16.01.2023