<div dir="ltr">Right. I guess I'm questioning the accuracy of the document.<br><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Feb 9, 2014 at 7:52 PM, Siraaj Khandkar <span dir="ltr"><<a href="mailto:siraaj@khandkar.net" target="_blank">siraaj@khandkar.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This is just a surprising side effect of dynamic typing. To perform the<br>
append, the left list is traversed and the right is just blindly used as<br>
a tail, so it is never introspected and thus never has an opportunity to<br>
crash.<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
On 2/9/14, 10:30 PM, Yoshihiro Tanaka wrote:<br>
> Hi,<br>
><br>
> In the document :<a href="http://www.erlang.org/doc/man/lists.html#append-2" target="_blank">http://www.erlang.org/doc/man/lists.html#append-2</a><br>
> It says:<br>
> append(List1, List2) -> List3, List1 = List2 = List3 = [T], T = term.<br>
><br>
> But considering the following behavior, it does not look correct:<br>
><br>
> 1> [] ++ undef.<br>
> undef<br>
> 2> undef ++ [].<br>
> ** exception error: bad argument<br>
>      in operator  ++/2<br>
>         called as undef ++ []<br>
> 3> [a,b] ++ undef.<br>
> [a,b|undef]<br>
> 4><br>
><br>
><br>
> Thoughts ?<br>
><br>
><br>
> Thank you<br>
> Yoshihiro<br>
</div></div></blockquote></div><br></div></div>