Tuesday, June 22, 2010

FTfJP invited talk - "Electrifying Javascript"

By Shriram Krishnamurthi. O for awesome. Good speaker, good talk, very electrifying! Presented a type system for Javascript (which seems to be fashionable right now, this one focuses on the dynamic parts of the type system, rather than finding class-like types). Cool type system - must be flow sensitive, features tags (like types, but simpler and descriptive, to support "typeof") and a nice way to go from tags to types, and non-nullness.

Actually uses flow analysis, but a simple (and intra-procedural) kind, looking only at tags. The type system uses tagchecks, and the flow analysis inserts tagchecks.

A slogan: "Types on the outside, flows on the inside".

The type checker assumes function parameters are anntotated with types. The final piece of the puzzle is that they dynamically infer these types which can then be used for type checking (!)

The whole process seems to work pretty well - good results, but over a relatively small code base.

[Note to self: reasonable plug for recency types, tomorrow]

No comments: