Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.11
-
None
Description
We use proplists:get_value to inspect JSON Objects in Erlang. I think we should switch to lists:keysearch. It's a BIF and appears to be 2-3x faster than proplists for a wide class of lookups. Here's a microbenchmark:
The get_value() functions in that gist provide a wrapper around keysearch to give it the same interface as proplists:get_value. The only incompatibility in the wrapper is that proplists will find atoms (instead of tuples) in the list, while keysearch will ignore them. But our JSON term format doesn't contain any standalone atoms, so this is not an issue for us.