loop exit question

Willem Broekema <>
Thu Apr 19 14:02:43 CEST 2001


If a function should loop forever while remembering some
state, most examples I have seen use:

loop(State) ->
   receive
       stop ->
           stopped_upon_request;
       Other ->
           ...,
           loop(State)
   end.

Now, if the State is not changed in any of the 'reveiced'
branches, is there a reason not to move the final 'loop()'
command to the end, and use 'exit()' for breaking out of
the loop, like in the following?

loop2(State) ->
   receive
       stop ->
           exit(self(), stopped_upon_request);
       Other ->
           ...
   end,
   loop(State).


TIA

- Willem




More information about the erlang-questions mailing list