In the industrial world, robots have a clear definition to differentiate them from other industrial machines:
Industrial robot as defined by ISO 8373:
An automatically controlled, reprogrammable, multipurpose manipulator programmable in three or more axes, which may be either fixed in place or mobile for use in industrial automation applications.
Reprogrammable: whose programmed motions or auxiliary functions may be changed without physical alterations;
Multipurpose: capable of being adapted to a different application with physical alterations;
Physical alterations: alteration of the mechanical structure or control system except for changes of programming cassettes, ROMs, etc.
Axis: direction used to specify the robot motion in a linear or rotary mode
The important words in this definition are "reprogrammable" and "multipurpose."
For example, let's think about a welding operation that takes place in a car factory. This operation could be done with a custom machine that lowers welding elements into place at the appropriate place on the car. Or we could install a robot arm, put a welder on the end of the arm, and teach (program) it where to weld. When a new model of car comes along, we can teach it the new weld points. If we no longer need the welding operation, we can move the robot somewhere else, put a new tool on the end of the arm, and teach it to paint or to screw in a bolt.
In a larger context, people have different ideas about what is a robot and what is not. But "multipurpose" and "reprogrammable" are still key ideas. If you can't easily re-purpose your machine to do something completely different by reprogramming (and perhaps making minimal hardware "tool" changes), it's not a robot.