Martin C. Carlisle

Learn More
Compiling for distributed-memory machines has been a very active research area in recent years. Much of this work has concentrated on programs that use arrays as their primary data structures. To date, little work has been done to address the problem of supporting programs that use pointer-based dynamic data structures. The techniques developed for(More)
The problem of coloring a set of n intervals (from the real line) with a set of k colors is studied. In such a coloring, two intersecting intervals must receive distinct colors. Our main result is an O(k + n) algorithm for k-coloring a maximum cardinality subset of the intervals, assuming that the endpoints of the intervals are presorted. Previous methods(More)
We believe that formal methods of all kinds are critical to mobile code security, as one route to gaining the assurance level necessary for running potentially hostile code on a routine basis. We begin by examining Java, and understanding the weaknesses in its architecture, on both design and implementation levels. Identifying dynamic linking as a key(More)
When students are learning to develop algorithms, they very often spend more time dealing with issues of syntax rather than solving the problem. Additionally, the textual nature of most programming environments works against the learning style of the majority of students. RAPTOR is a visual programming environment, designed specifically to help students(More)
We provided 21 short YouTube videos for an <i>Introduction to Programming in Java</i> course. Students were surveyed on how often they watched the videos and did the readings, and how much these activites contributed to their learning. When professors reduced lecture time and increased lab time, students watched videos and read significantly more. Their(More)
1. SUMMARY In the past decade educators have developed a myriad of tools to help novices learn to program. Different tools emerge as new features or combinations of features are employed. In this panel we consider the features of recent tools that have garnered significant interest in the computer science education community. These including narrative tools(More)
Algorithm visualization systems and techniques have been introduced in a number of curricula to increase learner engagement and improve pedagogical processes. Effective visualization tools must be educationally beneficial to the learner while avoiding excessive overhead. In an introductory IT course, we compared the effectiveness of a COTS diagramming tool(More)