Skip to content

OOPSLA Papers

Here are some recent papers which caught my attention. Generally speaking, you need to have a subscription to the ACM’s Digital Library to read them, but if one of these seems interesting let me know in comments and I can discuss it in more detail.

  • Dependent classes discusses a somewhat more flexible, proposed alternative to nested classes.
  • The causes of bloat, the limits of health introduces a metric to measure the tradeoff between necessary features and runtime memory footprint.
  • Notation and representation in collaborative object-oriented design: an observational study notes that when teams communicate OO designs visual, they tend to improvise a domain-specific modeling language in lieu of, say, UML. This is because of ad-hoc needs which are hard to represent in a standard modeling language, but also means that the artifacts created are hard to read without this context. The authors note, "Collaborative design tools and processes should therefore focus on preserving contextual information while permitting unconstrained mixing and improvising of notations."
  • Gavin M. Bierman, Erik Meijer, and Mads Torgersen of Microsoft Research have a paper called Lost in translation: formalizing proposed extensions to C#, where they discuss the motivations for and extensions to C# 3.0. They introduce a "core fragment" of C# 3.0, called FC#3, which contains all of the core features of C# 3.0.
  • Scalable omniscient debugging is pretty much what it sounds like. "Omniscient debugging" means recording every state change in the execution of a program. This is hugely useful information, as it means you can roll back the state of the app after it has crashed and replay the crash, but it’s also, well, huge. Making it work in the real world is obviously a challenge.
  • Living in the comfort zone flips testing on its head. The authors propose so-called rectifiers which ensure that an app can’t ever be presented with input data which substantively differs from what has been tested. They give an example of an email filter which blocks non-standard messages, thus working around a security vulnerability. But the idea is more general than that.
  • Confessions of a used programming language salesman asserts that "functional programming has finally reached the masses, except that it is called Visual Basic 9 instead of Haskell 98." No, really; it actually says that. Well, VB 9 hasn’t shipped yet, and even when it does it will still include mutable variables, and I think JavaScript can give it a good run for its money in terms of being a popular language with some FP ideas bolted on. All the same, it’s a worthwhile read if you’re wondering how (or why) some FP features might be added to certain other programming languages.
  • The transactional memory / garbage collection analogy: I’ll just copy the abstract in full here, because it’s short and to the point. "This essay presents remarkable similarities between transactional memory and garbage collection. The connections are fascinating in their own right, and they let us better understand one technology by thinking about the corresponding issues for the other."

Post a Comment

Your email is never published nor shared. Required fields are marked *

Bad Behavior has blocked 1846 access attempts in the last 7 days.

Close