Sarah Chasins '12 Wins First Place at National Software Conference
in the ACM Undergraduate Student Research Competition at the Systems, Programming, Languages, and Applications: Software for Humanity Conference held in Portland, Ore., this fall. Chasins, a computer science major from Clarkston, Mich., received top honors for writing a more efficient implementation of the new Plaid programming language.
"Winning was exciting, but in a lot of ways, the poster session was the most exciting component of the conference experience," says Chasins, who is using her work as the basis of her honors thesis. "I had fascinating discussions with the people who came up to me and spoke so much, I was hoarse by the end. But I was surrounded by people who were interested in the same kinds of questions that I find fascinating and got a lot of positive feedback."
Any new language needs to be turned into machine code, which can be directly translated into zeroes and ones. As Chasins notes, one way to do this is to translate the new language into another high-level language for which there is already a compiler - a program that converts it into machine code. Chasins wrote a compiler for the Plaid language to translate Plaid code into JavaScript code.
"This was a challenge because Plaid introduces several new language features and, of course, JavaScript doesn't support those new features," Chasins says. "I had to figure out a way to get a JavaScript program to do everything a Plaid program can do. It turns out the code produced by an earlier implementation of Plaid takes about 47 times as long as the code my compiler produced."
Despite her success in computer science, Chasins came to Swarthmore planning to major in English. But an Introduction to Computer Science with Associate Professor of Computer Science Richard Wicentowski in her second semester, taken just to fulfill a requirement, prompted her to reconsider.
"I loved everything about that class," she says, and later TA'd for it. "I loved the process of designing an algorithm, I loved that I could produce useful programs, I loved the thrill when my code ran. I had never enjoyed 'work' more than I did in that class, so I had to continue in the department.
"I am so lucky to have stumbled into taking that class," Chasins adds. "I could so easily have missed the opportunity to learn how much I would love programming. And I do love it; it's still just as exciting every day as it was in that very first class."
Next year, Chasins will compete in the ACM Student Research Competition Grand Finals. She is also the winner of the Computing Research Association Outstanding Undergraduate Researcher Award.