1. <programming> Said of a program that does the Right Thing in a wide variety of complicated circumstances. There is a difference between calling a program smart and calling it intelligent; in particular, there do not exist any intelligent programs (yet - see AI-complete).
Compare robust (smart programs can be brittle).
2. <hardware> Incorporating some kind of digital electronics.