我想编写一个函数,将值v插入位置a的列表中。列表的类型是
type RefList<'t> = Item<'t> ref
and Item<'t> = | Nil | Cons of 't * RefList<'t>
let rec insert<'t> (a: int) (v: <'t>) (structure: RefList<'t>): unit =
和
let rec remove<'t> (a: int) (structure: RefList<'t>): unit =
我尝试了类似的方法,但是我确定我的方法很错误
let mutable worker = 0
if a = worker then then Cons(v, !structure) else Cons(y, insert i v ys)
worker <- worker + 1
我不确定我是否应该对| Nil和| Cons进行匹配。 “单位”使我感到困惑。
我希望有人能帮助我,谢谢!
编辑:我已经有一个函数RefListToList和ListToRefList。这可能对其他功能有用