<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Erlang lists:keyfind or proplists:get_value?</title>
	<atom:link href="http://www.ostinelli.net/erlang-listskeyfind-or-proplistsget_value/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ostinelli.net/erlang-listskeyfind-or-proplistsget_value/</link>
	<description>From onions to space neons.</description>
	<lastBuildDate>Sat, 17 Mar 2012 15:43:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
	<item>
		<title>By: Richard Carlsson</title>
		<link>http://www.ostinelli.net/erlang-listskeyfind-or-proplistsget_value/comment-page-1/#comment-34515</link>
		<dc:creator>Richard Carlsson</dc:creator>
		<pubDate>Sun, 05 Jun 2011 12:05:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.ostinelli.net/?p=359#comment-34515</guid>
		<description>Hi Roberto. I know, but I recently started seeing tweets referring to this old blog article, and wanted to give newcomers some pointers.</description>
		<content:encoded><![CDATA[<p>Hi Roberto. I know, but I recently started seeing tweets referring to this old blog article, and wanted to give newcomers some pointers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Roberto Ostinelli</title>
		<link>http://www.ostinelli.net/erlang-listskeyfind-or-proplistsget_value/comment-page-1/#comment-34507</link>
		<dc:creator>Roberto Ostinelli</dc:creator>
		<pubDate>Sun, 05 Jun 2011 10:27:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.ostinelli.net/?p=359#comment-34507</guid>
		<description>hi richard, indeed.

btw, you are referring to erlang discussions which are one year younger than this very thread ;)

r.</description>
		<content:encoded><![CDATA[<p>hi richard, indeed.</p>
<p>btw, you are referring to erlang discussions which are one year younger than this very thread ;)</p>
<p>r.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richard Carlsson</title>
		<link>http://www.ostinelli.net/erlang-listskeyfind-or-proplistsget_value/comment-page-1/#comment-34505</link>
		<dc:creator>Richard Carlsson</dc:creator>
		<pubDate>Sun, 05 Jun 2011 10:21:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.ostinelli.net/?p=359#comment-34505</guid>
		<description>The proplists module is written in Erlang, while lists:keyfind/3 is implemented in C. The proplists module is mainly meant for situations like lists of user options, and lets you do things such as writing &#039;foo&#039; to represent a tuple {foo,true}. Hence, it is a bit more complicated than keyfind/3. Typically, you&#039;d use the proplists module to extract specific parameters from a list of options and then you&#039;d store those parameters in a record for quick access within loops. It&#039;s reasonably efficient, considering the extra things that it does, but if you know that your lists contain only tagged tuples, it can be better to use lists:keyfind/3 and friends.

See also: &lt;a href=&quot;http://erlang.org/pipermail/erlang-patches/2011-May/002137.html&quot; rel=&quot;nofollow&quot;&gt;http://erlang.org/pipermail/erlang-patches/2011-May/002137.html&lt;/a&gt;
and
&lt;a href=&quot;http://erlang.org/pipermail/erlang-patches/2011-May/002140.html&quot; rel=&quot;nofollow&quot;&gt;http://erlang.org/pipermail/erlang-patches/2011-May/002140.html&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>The proplists module is written in Erlang, while lists:keyfind/3 is implemented in C. The proplists module is mainly meant for situations like lists of user options, and lets you do things such as writing &#8216;foo&#8217; to represent a tuple {foo,true}. Hence, it is a bit more complicated than keyfind/3. Typically, you&#8217;d use the proplists module to extract specific parameters from a list of options and then you&#8217;d store those parameters in a record for quick access within loops. It&#8217;s reasonably efficient, considering the extra things that it does, but if you know that your lists contain only tagged tuples, it can be better to use lists:keyfind/3 and friends.</p>
<p>See also: <a href="http://erlang.org/pipermail/erlang-patches/2011-May/002137.html" rel="nofollow">http://erlang.org/pipermail/erlang-patches/2011-May/002137.html</a><br />
and<br />
<a href="http://erlang.org/pipermail/erlang-patches/2011-May/002140.html" rel="nofollow">http://erlang.org/pipermail/erlang-patches/2011-May/002140.html</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Roberto Ostinelli</title>
		<link>http://www.ostinelli.net/erlang-listskeyfind-or-proplistsget_value/comment-page-1/#comment-12116</link>
		<dc:creator>Roberto Ostinelli</dc:creator>
		<pubDate>Thu, 20 May 2010 14:57:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.ostinelli.net/?p=359#comment-12116</guid>
		<description>thank you adam for this feedback.

yes, that is indeed true. what may be an additional reason, is that proplists:get_value performs additional tests on list size and key being an atom, all things which do slow down code.</description>
		<content:encoded><![CDATA[<p>thank you adam for this feedback.</p>
<p>yes, that is indeed true. what may be an additional reason, is that proplists:get_value performs additional tests on list size and key being an atom, all things which do slow down code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam Kocoloski</title>
		<link>http://www.ostinelli.net/erlang-listskeyfind-or-proplistsget_value/comment-page-1/#comment-12114</link>
		<dc:creator>Adam Kocoloski</dc:creator>
		<pubDate>Thu, 20 May 2010 14:46:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.ostinelli.net/?p=359#comment-12114</guid>
		<description>Hi Roberto, keyfind and keysearch are BIFs, while proplists:get_value is not.  We recently switched all internal KV lookups in CouchDB to use use keysearch (for R12 compatibility).</description>
		<content:encoded><![CDATA[<p>Hi Roberto, keyfind and keysearch are BIFs, while proplists:get_value is not.  We recently switched all internal KV lookups in CouchDB to use use keysearch (for R12 compatibility).</p>
]]></content:encoded>
	</item>
</channel>
</rss>

