> For in-fix expressions shunting yard algorithm is significantly more clear
If it was significantly more clear, people would use it in practice! This makes me think it is not in fact significantly more clear.
I did research work in parsers, and I work professionally in compilers now, and guess what when I need a parser for in-fix expressions I just write a recursive descent one manually, it's never an issue.