Expression-building in Squid 3

Student: Noah Drake

Major: Computer Science

Mentors: Dr. Jim Bowring

Department: Computer Science

Expression-building in Squid 3

A primary feature of Squid 3 is expression-building. Expressions constructed by the user are made to manipulate data imported from XML documents generated by the sensitive high mass resolution ion microprobe (SHRIMP). As such, Squid offers its users, primarily geochronologists, the ability to write mathematical expressions which apply themselves to data gathered from the SHRIMP. Squid relies on a programmatic technique known as reflection to change the structure of the program while it is running, and, as a result, any expression constructed by the user can be saved into memory and be made available for later use in a form immediately ready to be executed by the JVM. My focus while working in the CIRDLES lab has been to examine why and how reflection serves as a useful tool for implementing, in Java, the expression-building tool made available in Squid or, more broadly, how this feature interacts with the rest of the features in Squid 3.