A linear motor could provide what you want with efficiency, but they are complex if you don't make your own.
 
 
Exemplifying a linear motor from a rotary motor
Anyway, for a lower cost belt system translating the rotational motion from the motor to linear, could provide what you want.

(source: pacific-bearing.com)
Belt drive linear actuator from http://www.pbclinear.com/Blog/How-to-Adjust-Belt-Tension-on-an-MT-Series-Actuator
You can made a more simple version of this. Use the actuator to move a "paddle" with the puck on low friction means.
The motor power is dependent on some variables, but you certain need a circuit to vary the current to the motor relative to the speed you want.
Another option is to use a rotary motor using the tangential force applied to the puck, and releasing at the correct time. Depending on speed and number of rotation before release you can vary speed. This would release the puck in some different directions in a regulated angle (from the launcher) depending on the controller precision.
BUT: 
 - You need a very good balance on the rotating part, if not, it's very dangerous.
 - You need a programmer and a micro-controller to release the puck at the correct time, as well to control the current to the motor.
So, I think the other options are more simple. A solenoid as suggested is an option, but they normally have low stroke, so it needs to have a high acceleration with this load. You could even try making you own. With a neodymium magnet and a coil (need go calculations), you can get pretty results. Anyway, if the cost is not a potential question, you can buy the correct stroke, force, solenoid, that shouldn't be cheap to impulse a 100g at 60mph, maybe at some degrees of inclination.
Other options are like the already projected ones, like this:
puck launcher http://i1.ytimg.com/vi/OKYWDKFZ6mY/hqdefault.jpg
From http://www.youtube.com/watch?v=OKYWDKFZ6mY
In this case you could use a universal motor's, but you need replace the brushes,
probably they can hold more than a year without problems, or even more. Power tools and home mobile vacuum cleaners are examples of use of this motor, you can vary the speed with phase angle or "dimmers", although that inject some noise in the network that can be attenuated with filtering.
Another option is a induction motor. That's used in much places, there's near no part to wear with use, mostly the bearings, and a 2 pole one on a 60Hz system, would go to 3600 RPM (a bit less) without load. The problem goes controlling their speed, you would need an inverter that can be costly (some projects use phase-control put that's has a series of drawbacks).
(I read this is your idea, although I think you could put directly in the motor axle, or at least if using other mechanical transmission, you probably don't need to change ratios. I leave the calculations on motor power to other collaborators)