Off-campus Eastern Washington University users: To download EWU Only theses, please use the following link to log into our proxy server with your EWU NetID and password.

Non-EWU users: Please talk to your local librarian about requesting this thesis through Interlibrary loan.

Date of Award

Spring 2006


Access perpetually restricted to EWU users with an active EWU NetID

Document Type

Thesis: EWU Only

Degree Name

Master of Science (MS) in Computer Science


Computer Science


There has been a growing interest in the development of software applications that visually depict the execution processes of programming languages. It is believed that visual traces of program execution in some language may help to expedite the learning of those that are unfamiliar with that language. In particular, the execution processes of logic programming languages are of interest here, since the typical model of execution may seem foreign to programmers familiar only with procedural languages. In this work, we examine a logic programming language, Fuzzy Relational Inference Language (Fril), and discuss the development and operation of the Fril Visual Tracer (FVT), a program designed to graphically present Fril's execution process to the user. A discussion of the FVT is preceded by an overview of logic programming: how it conceptually differs from traditional procedural programming and how it can be used to represent problems in logic. This is followed by an examination of the Fril language, whose particular syntax and interpretation of logical statements serve to provide a practical means of logic programming. The rules of the language are simple and consistent, though the consequences of them may not be obvious to novice Fril programmers. This potential difficulty has motivated the development of the FVT, which we describe in detail following the fundamentals of the Fril language. We discuss its particular method of simulating execution and how this process is consistent with the Fril interpreter, the environment used by Fril programmers. We then present the operation of the FVT by inspecting its user interface. This entails an examination of its unique features that attempt to provide the user with a good level of detailed information without overwhelming him or her. It is believed that the design approaches taken by the FVT will make visual traces of the Fril execution process more meaningful to the user and, in turn, help realize the potential of the FVT as a useful learning and development tool.