Original research and papers


GodPL Screenshot

The presumptuously named GodPL (Gamer or Deity? Programming Language) is a project I created for CS 152: Introduction to Programming Languages in Spring 2009.

The goal of the assignment was to design and implement an interesting domain-specific language.

The domain I came up with was a virtual world with simple, simulated inhabitants who could eat, move around, sexually reproduce, and die. It was inspired largely by the classic alife game, Creatures.

The language, GodPL, is a C-style language that is used to program the general behavior of a creature (called a Briyya) in the game.  It has some syntactic constructs specific to event handling and time-based events.

I defined the grammar for GodPL using ANTLR. ANTLR was used to generate a lexer and parser in C#. I then used these to write a compiler that generates C# code from GodPL, and then uses Microsoft's CSharpCodeProvider library to compile the C# to an in-memory assembly.

The unusual Hebrew days of the week

When you look at the Hebrew names for the days of the week, יום ראשון, יום שני, יום שלישי, etc., how would you translate them literally?

Most likely, you’d say “first day,” “second day,” “third day,” and so on. ראשון, שני, שלישי are ordinal numbers (מספרים סודרים), and probably serve as adjectives (שמות תואר).

But they’re not adjectives!

How would you say “next Tuesday” (as a noun, not as an adverb of time) in Hebrew? In Hebrew, adjectives match the nouns they describe in definiteness. If days of the week were simple noun-adjective pairs, then you’d say “היום השלישי הבא” — “the next third day.”

But this is incorrect — the actual phrase is “יום שלישי הבא.”

So, you might say, perhaps this is an exception. Perhaps days of the week are fixed expressions in which the adjectives are for some reason not inflected for definiteness. But this is also not the case — we’d have had something like “היום־שלישי הבא,” because that would be the way to make the whole thing definite.

Recommendations on Net Neutrality

Written for Expos 20: Rhetoric and Representation in Contemporary American Politics at Harvard College, in Fall 2006.

The goal of the assignment was to write a political white paper from the perspective of a (not necessarily existent) lobbying group. The result is a fairly complete background on Net Neutrality up through the end of 2006, as well as some original policy recommendations.

Reducing False and Irrelevant Alarms in Physiological Monitoring Systems

Research for the 2006 Intel Science Talent Search and NYC Science & Engineering Fair
Carried out at Memorial Sloan-Kettering Cancer Center, primarily in the summer of 2005.


Studies have shown that most alarms generated by physiological monitoring systems in modern hospitals are false or clinically irrelevant. This makes it difficult for nurses to pick out and respond to the relevant alarms, reducing efficiency and posing a potential risk to patients.

Syndicate content