Updating: implementing libats/linralist