A tale of two abstractions: the case for object space

A tale of two abstractions: the case for object space, Bittman et al., HotStorage 2019. This is a companion paper to the "persistent problem" piece that we looked at earlier this week, going a little deeper into the object pointer representation choices and the mapping of a virtual object space into physical address spaces. ...software … Continue reading A tale of two abstractions: the case for object space

A persistent problem: managing pointers in NVM

A persistent problem: managing pointers in NVM Bittman et al., PLOS'19 At the start of November I was privileged to attend HPTS (the High Performance Transaction Systems) conference in Asilomar. If you ever get the chance to go, I highly recommend it. It’s a comparatively small gathering with a great mix of people, and fabulous … Continue reading A persistent problem: managing pointers in NVM

Benchmarking spreadsheet systems

Benchmarking spreadsheet systems Rahman et al., Preprint A recent TwThread drew my attention to this pre-print paper. When spreadsheets were originally conceived, data and formula were input by hand and so everything operated at human scale. Increasingly we’re dealing with larger and larger datasets — for example, data imported via csv files — and spreadsheets … Continue reading Benchmarking spreadsheet systems

Declarative assembly of web applications from pre-defined concepts

Declarative assembly of web applications from predefined concepts De Rosso et al., Onward! 2019 I chose this paper to challenge my own thinking. I’m not really a fan of low-code / no-code / just drag-and-drop-from-our-catalogue forms of application development. My fear is that all too often it’s like jumping on a motorbike and tearing off … Continue reading Declarative assembly of web applications from pre-defined concepts

Efficient lock-free durable sets

Efficient lock-free durable sets Zuriel et al., OOPSLA'19 Given non-volatile memory (NVRAM), the naive hope for persistence is that it would be a no-op: what happens in memory, stays in memory. Unfortunately, a very similar set of issues to those concerned with flushing volatile memory to persistent disk exist here too, just at another level. … Continue reading Efficient lock-free durable sets

TLA+ model checking made symbolic

TLA+ model checking made symbolic Konnov et al., OOPSLA'19 TLA+ is a formal specification language (Temporal Logic of Actions) particularly well suited to reasoning about distributed algorithms. In addition to the specification language, the TLA+ toolset includes a model checker (TLC) and a theorem prover (TLAPS). Given the huge state spaces involved in many real-world … Continue reading TLA+ model checking made symbolic

Mergeable replicated data types – Part II

Mergeable replicated data types - part II Kaki et al., OOPLSA '19 Last time out we saw how Mergeable Replicated Data Types (MRDTs) use a bijection between the natural domain of a data type and relational sets to define merge semantics between two concurrently modified versions given their lowest common ancestor (LCA). Today we’re picking … Continue reading Mergeable replicated data types – Part II