Something
public text v1 · immutable(define (icons_destroy int ilst)
(cond
[(iempty? ilst)
(make-ilist_ADT int ilst 1)]
[else (define len (add1 (ilist_ADT-counter ilst)))
(set! ilst (make-ilist_ADT int ilst len))
ilst]))
(define (irest_destroy ilst)
(set! ilst (ilist_ADT-rest ilst))
ilst)
(define (icopy il)
(define newilist (make-ilist_ADT (ilist_ADT-first il)
(ilist_ADT-rest il)
(ilist_ADT-counter il)))
newilist)