Моцарт/Оз: как сделать запись с Record.make

Я пытаюсь создать запись из списка с помощью Record.make:

declare 
L=[z [a b] [1 2]]
{Record.make L.1 L.2 0}

но получаю ошибку:

Expected type: feature
At argument: 1

Как сделать второй аргумент L.2 типом «функция»? Я предполагаю, что L.2 представляет собой список [a b].


person Alexey Novakov    schedule 28.10.2016    source источник


Ответы (1)


Record.make создает запись со свежими (т.е. несвязанными) значениями. Например:

R = {Record.make label [a b]}

Возможно, вы хотите вместо этого List.toRecord:

R = {List.toRecord label [a#1 b#2]}
person wmeyer    schedule 28.10.2016
comment
Спасибо. List.toRecord также полезен! - person Alexey Novakov; 30.10.2016