Lambda lifting is a technique for transforming a functional program with local function definitions, possibly with free variables in the function definitions, into a program consisting only of global function (combina...
详细信息
Domain algebras are proposed as a tool for structuring compiler correctness proofs which are based on denotational semantics of the source and target language. The correctness of a compiler for a small imperative lang...
详细信息
In this paper we propose one explanation of why some novice programs are buggier than others. Central to our explanation is the notion of merged goals/plans in which multiple goals are achieved in a single integrated ...
ISBN:
(纸本)9780897911498
In this paper we propose one explanation of why some novice programs are buggier than others. Central to our explanation is the notion of merged goals/plans in which multiple goals are achieved in a single integrated plan. Our arguments are based on our theory of the knowledge — plans and goals — used by a novice in creating a program, and an analysis of actual buggy novice programs.
The problem of automatic explanation of reasoning, especially as it relates to expert systems is examined. Explanation means the ability of a program to discuss what it is doing in some understandable way. A general f...
详细信息
The problem of automatic explanation of reasoning, especially as it relates to expert systems is examined. Explanation means the ability of a program to discuss what it is doing in some understandable way. A general framework in which to view explanation and review some of the research done in this area is presented. The explanation system for NEOMYCIN, a medical consultation program is studied. A consultation program interactively helps a user to solve a problem. Our goal is to have NEOMYCIN explain its problem-solving strategies. An explanation of strategy describes the plan the program is using to reach a solution. Such an explanation is usually concrete, referring to aspects of the current problem situation. Abstract explanations articulate a general principle, which can be applied in different situations;such explanations are useful in teaching and in explaining by analogy. The aspects of NEOMYCIN that make abstract strategic explanations possible, the representation of strategic knowledge explicitly and separately from domain knowledge and demonstrate how this representation can be used to generate explanations, is described.
This paper describes the principles underlying an efficient implementation of a lazy functional language, compiling to code for ordinary computers. It is baaed on combinator-like graph reduction: the user defined func...
详细信息
The Arcturus system demonstrates several important principles that will characterize advanced Ada programming support environments. These include conceptual simplicity, tight coupling of tools, and effective command a...
详细信息
暂无评论