1
我想寫append!
。附加兩個可變列表
例如:如果我有
(define ml1 (mlist 1 2 3))
(define ml2 (mlist 4 5 6))
ml1
ml2
'#&(#&1 . #&(#&2 . #&(#&3 . #&())))
'#&(#&4 . #&(#&5 . #&(#&6 . #&())))
我希望能夠做到這一點:
(append! ml1 ml2)
(mlist->list ml1)
;; produces '(1 2 3 4 5 6)
堆棧溢出不是「給我codez」網站。你有什麼嘗試? – 2012-07-11 11:16:52
什麼是* mlist *? – 2012-07-11 22:37:43
@WillNess在球拍中,不變性是列表的默認值。因此'list'返回一個不可變列表。要得到一個可變列表,必須使用'mlist'。總之,所有(幾乎)列表操作都有兩種風格。那些在可變列表上工作的人通常會用'm'命名。 – soegaard 2012-07-12 10:05:22