{"type":"ScholarlyArticle","title":"Program Understanding with the Lambda Calculus","authors":[{"name":"Stanley Letovsky","slug":"stanley-letovsky","given":"Stanley","family":"Letovsky","affiliation":""}],"abstract":"A prerequisite of any attempt to build intelligent tools to assist in the programming process is a representation language for encoding programming knowledge. Languages that have been used for this purpose include the predicate calculus [5] and various program-schema languages [1,4]. This paper advocates a new candidate which is as expressive as the predicate calculus but more intimately connected with programming: the lambda calculus. Its advantages lie in its close resemblance to conventional programming languages, and in a straighforward model of inference by rewriting, which can be applied to automatic programming and program understanding. The use of the lambda calculus in an automatic program understander is described.","doi":null,"url":"https://ijcai.org/proceedings/1987/101","pdf":"https://ijcai.org/proceedings/1987/0101.pdf","markdown":"https://ijcai.org/proceedings/1987/101.md","bibtex":"https://ijcai.org/proceedings/1987/bibtex/101","volume":{"slug":"1987","title":"Proceedings of the Tenth International Joint Conference on Artificial Intelligence","short_title":"IJCAI 1987","url":"https://ijcai.org/proceedings/1987/","year":1987,"location":"Milan, Italy","dates":"","editors":"John McDermott","isbn":"","publisher":"International Joint Conferences on Artificial Intelligence","doi_prefix":""},"section":"Knowledge Representation","track":"Knowledge Representation","number":101,"pages":{"first":512,"last":513},"keywords":[],"videos":[],"references":[],"license_note":"Copyright International Joint Conferences on Artificial Intelligence."}