Knowledge-based program understanding is widely known as one of the key issues in programming education support systems and environments for novices. Most program understanders, however, have limitations. One of them is an ability to deal with a single programming language, while human tutors can comprehend plural languages by means of generalized knowledge on programming languages and techniques. This paper proposes the concepts and methodology of the knowledge-based program understander ALPUS II, which deals with plural programming languages, i. e. , Pascal and C, by means of generalized abstract syntax AL and knowledge representations based on it. ALPUS II is an extension of ALPUS, which dealt with a single programming language Pascal, and is a sub-system of an intelligent programming environment INTELLITUTOR. The INTELLITUTOR system consists of a guided programming editor GUIDE and a knowledge-based program understander ALPUS II, and is available on the Internet. In the process of comprehension source statements written in Pascal or C are translated into AL representation first. Since the contents of the programming knowledge bases are adjusted to deal with the AL representations the program comprehension procedure is available for both Pascal and C. It is possible to append other programming languages by simply attaching a transformation module for each additional procedural language. It is noted that knowledge acquisition tasks for additional languages are not needed since the contents of the knowledge base are generalized for multiple use. The INTELLITUTOR system was implemented in the frame-based knowledge engineering environment ZERO on a UNIX server machine in the Internet environment. ALPUS II demonstrates interesting features in program comprehension for the C language by means of the transformed knowledge from the already available knowledge for Pascal, which was developed for ALPUS, in a feasibility study. The current version of ALPUS II supports almost full specifications for Pascal and a Pascal-associated subset for C. This limitation should be reasonable for programming practice at freshmen classes of a university.
The copyright of the original papers published on this site belongs to IEICE. Unauthorized use of the original or translated papers is prohibited. See IEICE Provisions on Copyright for details.
Copy
Haruki UENO, "A Generalized Knowledge-Based Approach to Comprehend Pascal and C Programs" in IEICE TRANSACTIONS on Information,
vol. E83-D, no. 4, pp. 591-598, April 2000, doi: .
Abstract: Knowledge-based program understanding is widely known as one of the key issues in programming education support systems and environments for novices. Most program understanders, however, have limitations. One of them is an ability to deal with a single programming language, while human tutors can comprehend plural languages by means of generalized knowledge on programming languages and techniques. This paper proposes the concepts and methodology of the knowledge-based program understander ALPUS II, which deals with plural programming languages, i. e. , Pascal and C, by means of generalized abstract syntax AL and knowledge representations based on it. ALPUS II is an extension of ALPUS, which dealt with a single programming language Pascal, and is a sub-system of an intelligent programming environment INTELLITUTOR. The INTELLITUTOR system consists of a guided programming editor GUIDE and a knowledge-based program understander ALPUS II, and is available on the Internet. In the process of comprehension source statements written in Pascal or C are translated into AL representation first. Since the contents of the programming knowledge bases are adjusted to deal with the AL representations the program comprehension procedure is available for both Pascal and C. It is possible to append other programming languages by simply attaching a transformation module for each additional procedural language. It is noted that knowledge acquisition tasks for additional languages are not needed since the contents of the knowledge base are generalized for multiple use. The INTELLITUTOR system was implemented in the frame-based knowledge engineering environment ZERO on a UNIX server machine in the Internet environment. ALPUS II demonstrates interesting features in program comprehension for the C language by means of the transformed knowledge from the already available knowledge for Pascal, which was developed for ALPUS, in a feasibility study. The current version of ALPUS II supports almost full specifications for Pascal and a Pascal-associated subset for C. This limitation should be reasonable for programming practice at freshmen classes of a university.
URL: https://global.ieice.org/en_transactions/information/10.1587/e83-d_4_591/_p
Copy
@ARTICLE{e83-d_4_591,
author={Haruki UENO, },
journal={IEICE TRANSACTIONS on Information},
title={A Generalized Knowledge-Based Approach to Comprehend Pascal and C Programs},
year={2000},
volume={E83-D},
number={4},
pages={591-598},
abstract={Knowledge-based program understanding is widely known as one of the key issues in programming education support systems and environments for novices. Most program understanders, however, have limitations. One of them is an ability to deal with a single programming language, while human tutors can comprehend plural languages by means of generalized knowledge on programming languages and techniques. This paper proposes the concepts and methodology of the knowledge-based program understander ALPUS II, which deals with plural programming languages, i. e. , Pascal and C, by means of generalized abstract syntax AL and knowledge representations based on it. ALPUS II is an extension of ALPUS, which dealt with a single programming language Pascal, and is a sub-system of an intelligent programming environment INTELLITUTOR. The INTELLITUTOR system consists of a guided programming editor GUIDE and a knowledge-based program understander ALPUS II, and is available on the Internet. In the process of comprehension source statements written in Pascal or C are translated into AL representation first. Since the contents of the programming knowledge bases are adjusted to deal with the AL representations the program comprehension procedure is available for both Pascal and C. It is possible to append other programming languages by simply attaching a transformation module for each additional procedural language. It is noted that knowledge acquisition tasks for additional languages are not needed since the contents of the knowledge base are generalized for multiple use. The INTELLITUTOR system was implemented in the frame-based knowledge engineering environment ZERO on a UNIX server machine in the Internet environment. ALPUS II demonstrates interesting features in program comprehension for the C language by means of the transformed knowledge from the already available knowledge for Pascal, which was developed for ALPUS, in a feasibility study. The current version of ALPUS II supports almost full specifications for Pascal and a Pascal-associated subset for C. This limitation should be reasonable for programming practice at freshmen classes of a university.},
keywords={},
doi={},
ISSN={},
month={April},}
Copy
TY - JOUR
TI - A Generalized Knowledge-Based Approach to Comprehend Pascal and C Programs
T2 - IEICE TRANSACTIONS on Information
SP - 591
EP - 598
AU - Haruki UENO
PY - 2000
DO -
JO - IEICE TRANSACTIONS on Information
SN -
VL - E83-D
IS - 4
JA - IEICE TRANSACTIONS on Information
Y1 - April 2000
AB - Knowledge-based program understanding is widely known as one of the key issues in programming education support systems and environments for novices. Most program understanders, however, have limitations. One of them is an ability to deal with a single programming language, while human tutors can comprehend plural languages by means of generalized knowledge on programming languages and techniques. This paper proposes the concepts and methodology of the knowledge-based program understander ALPUS II, which deals with plural programming languages, i. e. , Pascal and C, by means of generalized abstract syntax AL and knowledge representations based on it. ALPUS II is an extension of ALPUS, which dealt with a single programming language Pascal, and is a sub-system of an intelligent programming environment INTELLITUTOR. The INTELLITUTOR system consists of a guided programming editor GUIDE and a knowledge-based program understander ALPUS II, and is available on the Internet. In the process of comprehension source statements written in Pascal or C are translated into AL representation first. Since the contents of the programming knowledge bases are adjusted to deal with the AL representations the program comprehension procedure is available for both Pascal and C. It is possible to append other programming languages by simply attaching a transformation module for each additional procedural language. It is noted that knowledge acquisition tasks for additional languages are not needed since the contents of the knowledge base are generalized for multiple use. The INTELLITUTOR system was implemented in the frame-based knowledge engineering environment ZERO on a UNIX server machine in the Internet environment. ALPUS II demonstrates interesting features in program comprehension for the C language by means of the transformed knowledge from the already available knowledge for Pascal, which was developed for ALPUS, in a feasibility study. The current version of ALPUS II supports almost full specifications for Pascal and a Pascal-associated subset for C. This limitation should be reasonable for programming practice at freshmen classes of a university.
ER -