<div dir="ltr">The ^ operator allows you to annotate already-bound pattern variables as ^X, like in Elixir. This is less error prone when code is being refactored and moved around so that variables previously new in a pattern may become bound, or vice versa, and makes it easier for the reader to see the intent of the code.<div><br></div><div>See also <a href="https://github.com/erlang/otp/pull/2951">https://github.com/erlang/otp/pull/2951</a><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><br></div><div class="gmail_signature" data-smartmail="gmail_signature">Ho ho ho,</div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><br>        /Richard & the good folks at WhatsApp</div></div></div></div>