Ridiculous_fish: I Didn’t Order That, So Why Is It On My Bill, Episode 2
ridiculousfish.com
ridiculousfish.com
But then I started resizing my browser, expecting the site to immediately become useless when I did so. I was pleasantly surprised.
I don't necessarily like the design / layout, but it appears that they did it "the right way".
The feature you pay for without using it is copy on write, not [].
In fact it's very clear in the paragraph before the last chunk of code:
> If you do use these functions, you risk paying for a write that you don't make
Or, like I said, if you want copies, it's because you want copies. If you just want cheap references, use references.
He's had some excellent blog posts.
I had a chunk of c-like struct definition grammar done in lex/yacc that was turned into an AST that consumed some bytes from a hexfiend document and populated an outline view with a description. But it was messy and not what I wanted it to be.
What I'm trying to say is, I love hexfiend also.
Yes, it was uncharacteristic...but good god, imagine the chaos if your references were invalidated by any copy or assignment operation. I don't even want to think about the consequences for complex code. The standard committee was exactly right to choose the (avoidable if you're careful) performance hit over the complex "fix."
I disagree with his fix of casting non-const strings to const for a quick fix. The best way is to use const in the first place for any strings you don't plan to write to.