code2vec: Learning Distributed Representations of Code