Neural Symbolic Machines: Learning Semantic Parsers on Freebase with Weak Supervision