Ok so if you are not using the SS then the easiest option for you I would think is to use Swap Axis.
Mach can read encoders, just it can not be used to correct in real time, they are basically for monitoring purposes. Plugin or macro could be used to read the endcoders and fault if they differ by a set amount but by that time it may be too late.
If you use servos then Mach does not need to read the encoders as that is what the servo drives do, it is them that close the loop. If a drive faults for any reason then you can have Mach halt motion by sending a signal from the drive to Mach but that should only be in extreme cases as your drives should get a motion signal from Mach and should get the motor to that position by monitoring it and making sure they get there at the correct time, if they cant then they will fault. If they fault except from in abnormal conditions then your tuning or sizing will most likely be the cause of the problem.The industrial controls that keep track of position use "dumb" amplifiers to move the motor with an analogue signal so because of that the control needs to close the loop.
I am not a fan of electronic gearing as it can produce cogging but that will depend on how much you gear and the setup you have. Previous to the SS I was forced to use 1:2 electronic gearing in my drives to get even a semi decent rapid (3400mm/min) but I needed twice that to get to the machines original rapids and on very slow moves I would notice cogging when watching a clock (dti)
Having said that it will all depend on your aplication and encoder count, some people swear by it, just I am not one.
Servo/stepper may be similar now I am not sure as the servos I use are certainly not that kind of price (new anyway
) One thing to make sure is that you are looking at similar kw/torque motors when comparing prices.
Hood