<div dir="ltr"><div>Hi Peter, Julian,</div><div><br></div><div>Just throwing it out there but I implemented a zipper data structure</div><div> in mercury some time ago if you're interested:<br></div><div>  <a href="https://gist.github.com/bartosz-witkowski/8154124">https://gist.github.com/bartosz-witkowski/8154124</a></div><div><br></div><div>Kind Regards,</div><div>Bartosz Witkowski<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jun 25, 2019 at 3:49 PM Peter Wang <<a href="mailto:novalazy@gmail.com">novalazy@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Tue, 25 Jun 2019 00:28:59 -0500, <a href="mailto:jfondren@minimaltype.com" target="_blank">jfondren@minimaltype.com</a> wrote:<br>
> <br>
> 1. Do you recommend some other way to implement circular lists, or a<br>
> data structure suitable for this task?<br>
<br>
Hi,<br>
<br>
I think the standard solution would be a pair of lists. One list<br>
represents, in reverse, the elements before the "current" element.<br>
The other list represents the current and subsequent elements.<br>
<br>
<a href="https://en.wikipedia.org/wiki/Zipper_(data_structure)" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/Zipper_(data_structure)</a><br>
<br>
Peter<br>
_______________________________________________<br>
users mailing list<br>
<a href="mailto:users@lists.mercurylang.org" target="_blank">users@lists.mercurylang.org</a><br>
<a href="https://lists.mercurylang.org/listinfo/users" rel="noreferrer" target="_blank">https://lists.mercurylang.org/listinfo/users</a><br>
</blockquote></div>