title: What is "!" in Prolog
body: <p>Could somebody explain me what does "!" do in Prolog ? I don't understand it.
  Here I have a code that counts how many sublists of a heterogeneous list have mountain aspect.</p>
  
  <pre><code>nrSubliste([], 0).
  nrSubliste([H|T], R):-
      is_list(H),
      munteMain(H),!,
      nrSubliste(T, R1),
      R is R1 + 1.
  nrSubliste([_|T], R):-
      nrSubliste(T, R).
  </code></pre>
  
  <p><code>munteMain</code> verifies if a linear list has a mountain aspect.</p>