Friday, November 28, 2008

Next

I finished the first draft of my CSS semantics! Now on to some implementation aspects and the first of two phases of the security project :)

Also applied for an internship in Seattle this summer. Been wanting to spend a summer there :)

Sunday, November 9, 2008

Semantics

I've been wanting to do this for a few years now, so I'm happy to finally have had a good opportunity to do it. It'll probably be another week until I have the full 'core' v1 done, but it's been a cathartic experience so far: the formal semantics of cascading style sheets.


(a very tiny snippet)

I forgot who, but a language designer suggested that any other budding one should, at some point in their life, be involved in the standardization process of some language. I'm not sure this is where I'm most qualified to throw my hat in the ring, but, as CSS is one of the most popular languages in the world and, of those, one of the most ambiguously defined, any bit of help might help. I'm writing the semantics for performance reasons (!!), but it's nice to have a silver lining :)

Tuesday, November 4, 2008

A Brazen Position

Evan's thesis is, essentially, that analyses should be more user friendly.

He means that developers should be able to more naturally interact with the analyses driving whatever language tasks they are performing. Raluca and I just submitted a paper with a slightly different spin on this:

An analysis should match the abstraction level of the consumer. In most cases, this is actually fairly high level. In our particular case -- control-flow analysis of end-user applications (aka web applications) -- we argue for control flow in terms of the language of the user interface. For example, a submit button on one form in which a chat menu is open goes to another page where the chat menu is still open. A state is simply the actions a user may take.

Sounds really deep, complicated, and hard to use, right?

Monday, November 3, 2008

Abstractly Interpreting and Inferring Web User Interfaces

It works!

Sample application: (reformatted) fragment of the output of our change-impact analysis.


24 more hours of writing...