<div dir="ltr"><div class="gmail_extra">I agree with Richard that lists:first/2[1] is missing. Adding that functions could solve part of the problem. maps:has/3 could also be useful, though so far I've always found the same functionality to be easier to do with syntax.</div><div class="gmail_extra"><br></div><div class="gmail_extra">For me, adding lists:mapfind/3 and friends to the stdlib is a convenience so that I don't end up writing the following in my projects:</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra"><font face="monospace, monospace">%% Map helpers</font></div><div class="gmail_extra"><font face="monospace, monospace">mapsort(Key, Maps) -></font></div><div class="gmail_extra"><font face="monospace, monospace">    lists:sort(fun(#{ Key := V1 }, #{ Key := V2 }) -></font></div><div class="gmail_extra"><font face="monospace, monospace">                       V1 < V2</font></div><div class="gmail_extra"><font face="monospace, monospace">               end, Maps).</font></div><div class="gmail_extra"><font face="monospace, monospace"><br></font></div><div class="gmail_extra"><font face="monospace, monospace">mapfind(Key, Value, List) -></font></div><div class="gmail_extra"><font face="monospace, monospace">    lists:find(fun(#{ Key := V } ) -> V == Value end, List).</font></div><div class="gmail_extra"><br></div><div class="gmail_extra">If it is only me and Max that find that we keep re-implementing these functions in various places, then I don't think that we should add special functions for list of maps. However as maps are gradually replacing more and more use-cases where before we used proplists or records, I think these functions will be become increasingly useful. I could very well be wrong though.</div><div class="gmail_extra"><br></div><div class="gmail_extra">As for the naming of the functions, I don't have any great suggestions about what they should be called or where they should be placed. I don't find the lists module to be a very wrong place to put them (for the reason Roger pointed out), the maps module also makes some sense, or possibly adding a new module all together.</div><div class="gmail_extra"><br></div><div class="gmail_extra">[1]: though I think it should be called lists:find/2 for consistency with lists:keyfind/3 and to not be confused as the opposite of lists:last/1</div><div class="gmail_extra"><br></div></div></div>