Gallino forniva una definizione molto interessante:
un programma è un circuito di decisione che comprende vari circuiti minori di decisione (segmenti o sottoprogrammi), ed è incluso in un circuito di decisione più ampio (il metaprogramma, ovvero il linguaggio d’alto livello in cui il programma è scritto). E il computer è una macchina che fa del suo meglio per imitare, di solito tramite macchine virtuali inesistenti o meglio non confinabili come oggetti fisici, eppur reali, ed efficaci nel produrre reali effetti, la macchina che il programma incorpora. (L. Gallino, “Tecnologie e democrazia. Conoscenze tecniche e scientifiche come beni pubblici”, Einaudi)