Archive for February, 2018

I’ve been thinking a lot about where the death’s head symbol, ☠, appears in the Python semantic analysis. The Python language, underneath all the churn and symbols, is only about 40 semantics in size (see: Python, The Full Monty), and most of those are fairly well-defined. The problem lies in this simple example: def f(y): […]

I wonder if cloud computing is turning software development into a worethless, even dangerous, parasite for our economy and our world. It’s common knowledge among economists that most of the financial sector just moves money around, taking a cut, without adding value. Various brokers and traders and "financial planners" are just salesmen who are there […]


Engineering Notebook: More Learning Rust

Posted by Elf Sternberg as Uncategorized

mem::replace() In the Learning Rust With Too Many Linked Lists, there’s a bit of code that looks like this to build a new element and append it to the head of the list: let new_node = Box::new(Node { elem: elem, next: mem::replace(&mut self.head, Link::Empty), }); self.head = Link::More(new_node); The problem here is that if we […]

As I’ve been reading Rust code and learning how to write it, I’ve become frustrated with one detail that’s been driving me a little crazy from time to time. How do other developers know when some side-issue management is necessary? In my specific case, it’s about Drop. In two different contexts, I’ve now seen highly […]

I’ve been reading about implementing advanced collections in Rust thanks to Alexis Beingessner’s wonderful, if perhaps excessively opinionated, lecture on “exceptional” collections1. Rust’s enforced memory correctness requires the programmer to make intelligent decisions about references and move semantics, stuff no one’s ever really had to think about in C or C++. I’m having a hard […]

Subscribe to Feed



February 2018
« Jan   Mar »