I finally took a look at the Redlaser barcode scanner from Occipital for the IPhone, released earlier this year. It is a $1.99 application that downloads quickly. It uses the camera on my 3G Iphone and then interprets that picture as a 1D barcode. I have previously looked at a number of proprietary 2D, camera-based readers for cellphones. This one interprets standard codes found on most products. (UPC and EAN) It can then be used to search for that product to find more information or alternative prices. Or save a list of products scanned.
I tried it on a dozen or so consumer products that I am familiar with and some other items like books. Worked OK, but required you to get close to a product, and hold the camera still while it scans. It worked well if I could easily orient the phone view with the package barcode. In use at the shelf that may be difficult. Or in a situation where I need to pick up the product to scan it. It did not work for upside-down or difficult to orient situations. Also the amount of light available seemed to alter its accuracy. You don't have to take a picture, it scans when it determines it is properly oriented. In the site video they pre-oriented products to work easily.
Bottom line, its a great idea, works with some effort, but don't expect it to work practically in its current form for scanning purchases as you put them in a cart. A typical shopper would not accept the difficulty. It has to work very quickly and reliably. Would work if you are scanning one-off, expensive purchases that may have lower prices in another shop. More technical details on their blog including SDK information.