Shallow Hal: Gwyneth Paltrow as Rosemary Rosemary Shanahan (Gwyneth Paltrow) as seen by Hal Lawson (Jack Black) in the Farrelly Brothers’ film “Shallow Hal.”