I am looking for a function<div> f::<span class="Apple-style-span" style="font-family: Arial; font-size: 13px; white-space: pre; ">Eq a =&gt; [a]-&gt;[a]</span></div><div><span class="Apple-style-span" style="white-space: pre;">that takes a list and returns the longest </span></div>
<div><span class="Apple-style-span" style="white-space: pre;">initial segment of the list for which all</span></div><div><span class="Apple-style-span" style="white-space: pre;">the elements are distinct.</span></div><div>
<span class="Apple-style-span" style="white-space: pre;"><br></span></div><div><span class="Apple-style-span" style="white-space: pre;">For example  f [2,3,6,4,3,5] = [2,3,6,4].</span></div><div><span class="Apple-style-span" style="white-space: pre;"><br>
</span></div><div><span class="Apple-style-span" style="white-space: pre;">I didn&#39;t see anything that matched using Hoogle,</span></div><div><span class="Apple-style-span" style="white-space: pre;">but I thought this might be a common enough</span></div>
<div><span class="Apple-style-span" style="white-space: pre;">operation that this function might exists somewhere</span></div><div><span class="Apple-style-span" style="white-space: pre;">in the standard packages.</span></div>
<div><span class="Apple-style-span" style="white-space: pre;"><br></span></div>