This SO post has a good explanation of the differences in ANSI SQL complaince and is similar to the question asked here.
While (as has been said) both queries will produce the same result, I believe that it is always useful to clearly indicate your JOINs. This is much easier to understand, especially when there are non-JOIN bounds in the WHERE clause.
Explicitly specifying your JOIN also prevents unintentional access to the Cartesian product. In your second case above, if you (for some reason) forgot to include a WHERE clause, your query will work without JOIN conditions and return a set of results for each row in Persons corresponding to each row in Orders ... probably not that is what you want.
Aaron
source share