The authors present semantics for logic programs using term rewrite systems. Reading program lines from left to right (so reversing the arrows), considering the result as a rewrite system, immediately gives the usual declarative semantics (the least Herbrand model). Then the authors add a priority ordering on the rewrite rules, and obtain a procedural semantics for Prolog with depth-first search rule. This gives the authors different semantics in the same settin