Time-travel movies almost always make your head hurt. Has there ever been a screenwriter who succeeded in battening down all of the genre’s rampant temporal improbabilities? By now, the most efficient way to finesse this in-built problem is simply to laugh at it. And so in the new Looper, in a scene set in a diner, we have one character saying to another, “I don’t wanna talk about time travel. We’ll be here all day drawing diagrams with straws.” In other words, let’s move right along.

Looper is a very good time-travel movie. Writer-director Rian Johnson has come up with a nifty sci-fi hook, and he keeps as tight a rein as possible on the story’s twisty internal logic. The year is 2044; the place, Kansas City, Kansas—here, a familiar dystopian hellhole. Our protagonist, a young guy named Joe (Joseph Gordon-Levitt), tells us in voiceover that time travel hasn’t been invented yet—but that 30 years in the future it has. Thus, the powerful mob of the future, run by a fearsome crime lord called the Rainmaker, is able to send any poor saps who’ve incurred the kingpin’s displeasure back in time to be terminated, their bodies to be disposed of in the past, where future cops can never find them. The men who do these retro rub-outs are called loopers. They wait in rural fields for a victim from the future to materialize in front of them—on schedule, bound, and helpless—and then blow him away with their scatterguns. Joe is a looper. And he knows that 30 years hence, he’ll be handed his own one-way ticket back to now.

Things get complicated very quickly when a newly arrived victim Joe confronts one day turns out to be his older self (played by Bruce Willis). Old Joe is a crafty character with a sad backstory and a determination to alter it by finding the little boy who will grow up to be the Rainmaker and terminating him. Old Joe escapes before Young Joe can blow him away, leaving Young Joe in a serious bind. We have already seen that his avuncular but vicious boss, Abe (Jeff Daniels)—a mobster from the future who runs the looper franchise here in the past—has an extremely gruesome method for dealing with loopers who’ve allowed their future selves to run amok in the movie’s present, possibly disrupting the future in fundamental ways.

At another point in the happily convoluted story, we learn that Young Joe, who began life as an abandoned child and worked his way up to drug-addicted hitman, has dreamed vaguely of going to France; but on the advice of Abe -- who, again, has seen the future—he decamps instead for China, where we watch him maturing, over the course of 30 fast-forward years, into Old Joe. The circle recycles, or whatever.

Eventually, both Joes are drawn toward a remote farm, where a woman named Sara (Emily Blunt) chops wood and tends to her son, Cid (Pierce Gagnon, excellent beyond his years), who appears to be about eight years old. Despite the fact that Cid’s name is never written down for us, those who remember the old Charlton Heston movie El Cid may feel inklings of realization dawning about here.

The movie’s time-warp scenario makes enough sense to be a lot of fun; the characters have an emotional depth that’s unusual in this sort of picture; and the action, of which there’s a lot, is often strikingly imaginative. The sequence in which a grim tracker named Jesse (Garret Dillahunt) shows up at Sara’s farm looking for Young Joe is memorably inventive—tense, funny, and explosively bloody, too. And the movie’s mini-apocalyptic conclusion is both unexpected and unexpectedly moving.

Director Johnson makes witty use of Willis, exploiting both his whispery tenderness and his well-known facility for bullet-fueled mayhem. And Blunt, slowly peeling back the layers of Sara’s melancholy life, is a haven of graceful restraint in a world of untethered furies. Unfortunately, Gordon-Levitt is subverted by the movie’s most nagging flaw. In an effort to synch his appearance with that of the Bruce Willis he will one day become, Johnson has stiffened the younger actor’s face with prosthetic enhancements that lend him an oddly frozen look, which is distracting. (I spent the movie’s early innings wondering if he was a robot, or maybe a stroke victim.) This is too bad, but not ruinous. Loopers is still a small classic of the time-travel form—a vivid depiction of a future that no one would want to go back to.