Преимущество в том, что если сразу писать код с расчетом на возможность его компилирования в разных системах для разных архитектур, не придется потом прибегать к подобным костылям, о которых повествует разработчик из Abbyy.
http://habrahabr.ru/company/abbyy/blog/101560/
А ведь еще Керниган и Пайк в своей книжке "Практика программирования" об этом писали. В результате *nix программы, обычно без особых проблем портируются и под 64 бита и под разные процессоры и даже под Windows. Не потому что они юниксовые (линуксовые), а из-за принятой
культуры программирования. Так 64-битные дистрибутивы Linux с в итоге миллионами строк кода уже существуют много лет и даже были до появления x86-64 (amd64).
А с виндовой культурой масса людей огребла кучу проблем уже с портированием на 64 бита. Нативных 64-битных программ в мире Windows до сих пор мало. Да, если при написании программы сразу держать в уме, что ее может быть понадобится портировать куда-то, это увеличит трудозатраты. Хотя и не факт, может весь код в итоге будет стройнее.
Можно возразить, что в описываемом случае просто предлагается быстрое решение проблемы и в качестве такового сложно чего-то еще требовать, но сложно отделаться от ощущения, что проблема носит системный характер. И случай с Recognition Server не единственный. Я встречал примеры, когда код был очень жестко заточен на Win32 и его разработчики не только не думали, что кроме Win что-то еще может быть, но даже никогда не думали, что Windows, начиная с начала 90-х годов (WinNT 3.1) бывает не только 32-битной.