Результаты поиска по запросу "sml"
Sml складывание дерева
Я пытаюсь получить произведение дерева с помощью функции сгиба, пока это то, что у меня есть. Я не понимаю, как использовать метод сгиба при прохождении дерева
И это ваш окончательный результат.
я работаю над финалом практики, есть проблема, попросите меня нарисовать дерево разбора для этого кода sml:
Сделаю.
исал функцию, которая работает, как ожидалось, но я не понимаю, почему вывод такой. Функция:datatype prop = Atom of string | Not of prop | And of prop*prop | Or of prop*prop; (* XOR = (A And Not B) OR (Not A Or B) *) local fun ...
"), и порядок (сопоставление сверху вниз) может иметь значение, если шаблоны перекрываются (чего нет в любом из вышеперечисленных)
ужно использовать методы сопоставления с образцом, чтобы рекурсивно поменять местами каждую пару элементов в списке. Так,[1, 2, 3, 4, 5] вернется[2, 1, 4, 3, 5]. Я нашел две вещи: List.length: чтобы вернуть длину. Что полезно для работы с ...
В общем, руководство пользователя содержит несколько хороших примеров и объяснений.
ужно создать новый экземплярlexer привязан к стандартному потоку ввода. Тем не менее, когда я набираю val lexer = makeLexer( fn n => inputLine( stdIn ) );Я получаю ошибку, которую не понимаю: stdIn:1.5-11.13 Error: operator and operand don't ...
А вот и другое:
вления функцияexpand который получает список любого типа и целое числоnи возвращает список, в котором реплицируется каждый элемент списка вводаn раз. Например, расширение [1,2,3] 3 должно быть оценено как [1,1,1,2,2,2,3,3,3]. Тип функции должен ...
Когда использовать точку с запятой в SML?
Я знаю, что точки с запятой используются в качестве терминаторов в REPL. Но я не понимаю, когда использовать их в исходном файле. Например это не нужно послеval x = 1, Но если я опущу это послеuse "foo.sml"Компилятор пожалуется на это. Тогда ...
Спасибо, я не знал, могли бы вы использовать блоки и typedef как этот. Сначала я попробую последний способ и, если необходимо, поработаю с шаблоном для последующих элементов.
для моделирования ленивого программирования возможно следующее: // Have a datatype to wrap a computation datatype 'a susp = Susp of (unit -> 'a) // A function to hold the computation fun delay(f ) = Susp(f)Я знаю, что замыкания могут быть ...
Как «исправить» интерактивную систему SML / NJ для использования клавиш со стрелками
У меня возникли некоторые проблемы с использованием интерактивной системы SML / NJ, а именно: когда я пытаюсь использовать клавиши со стрелками (влево или вправо, чтобы внести исправление в набранное выражение, вверх, чтобы повторить последнее ...