Noob - Getting Started Infinte Loop?
Wed Aug 30 13:42:49 CEST 2006
Hi and welcome!
On 8/30/06, fbg111 <fbg111@REDACTED> wrote:
> However, I can't see the difference b/t my code and the
> example code:
> > list_length() -> 0;
> > list_length([First | Rest]) -> 1 + list_length(Rest).
> > listlen() -> 0;
> > listlen([First|TheRest]) -> 1 + listlen([TheRest]).
The difference is that the last line in your code should read
listlen([First|TheRest]) -> 1 + listlen(TheRest).
i.e. TheRest and not [TheRest] as argument.
What happens is that listlen gets called with following arguments:
[1, 2, 3]
..... so it's an endless recusrion that finally kills the VM
More information about the erlang-questions