Hacker Newsnew | past | comments | ask | show | jobs | submit | more pornel's commentslogin

Regardless of escape analysis, this problem doesn't exist in Rust, because the language features that lead to this problem don't exist either.

In Rust, moves are built in into the language. Types with destructors can't have implicit copying, and there are no copy constructors. There is no moved-from state of objects, and destructors never run redundantly. Box (Rust's unique_ptr) is statically guaranteed to be always non-null and have a single owner at all times. So the language has no equivalent of omitting std::move, and has no semantically-observable copy to elide.

See https://rust.godbolt.org/z/PnWv5d6n9 and https://rust.godbolt.org/z/Efosx3Wea

Rust does emit memcpy for its moves, and for that it has got some specific LLVM improvements: https://khei4.github.io/gsoc2023/


Blockers on iOS are a weaksauce. I still sometimes get malvertising ads in Safari, such as an alert("You have a virus! Call Microsoft on 0xxxxx"). I've never seen that on desktop with Firefox + uBlock Origin.


Abusers who have actual CSAM could intentionally publish the fingerprints to sabotage the scanning scheme. If the illegal fingerprints become known, it will be possible to generate false positives and overwhelm verification/enforcement with bogus matches.


It's not an "any of us problem" for a bad system to be overwhelmed. Let it be overwhelmed.


Damn, a bit far fetched but theoretically possible. Jikes.


FTX was supposed to be cryptocurrency-based — you were buying tokens in an immutable blockchain, and yet the real money was tracked in spreadsheets, and the exchange had an infinite money flag for their own accounts.


Don’t tell that to people buying Tether.


Flat design has destroyed UI readability.

I can’t stand modern platforms that make me guess whether any piece of text is a button.


What stands out to me though is how clear and straightforward to use the control panels were for e.g. mouse, keyboard, timezone and display. Their current counterparts are a bit of a mess and I find very difficult to navigate.

Although they did lead to the infuriating click "Apply" then click Ok behaviour that people got into the habit of.

And yes, that Desktop area of 640 by 480 pixels was what we started off with, and we liked it! Once I got a monitor that supported 1024 by 768 then it was just luxury.


Macbook Air for the same price has more than twice the pixels, and higher brightness.

MS could have at least beaten Apple on RAM and SSD specs, where Apple charges $200 extra for $20 worth of hardware… but they didn't.


Why this is obviously targeted as a generic average light laptop for businesses that are already microsoft shops.


They beat Apple on software and the overall full experience, hw + sw.


I don’t see how you can pass off Windows as being a good software experience. The default experience is stuffed full of ads, and it’s only getting worse.

HW+SW integration is Apple’s whole schtick. I can just put an iPad next to my Macbook and it turns into a secondary display.


I have not seen glaring UI bugs until I switched to Apple. Given how little features they offer, you'd think they can do better. I have not seen such bugs on Windows. Windows it's like a bazaar somethimes but at least it works and you can do whatever you like. Apple only had hw build quality on their side and that is true only for their laptops now.


I really like Rust's async for its ability to immediately cancel Futures, the entire call stack together, at any await point, without needing cooperation from individual calls.


How is that possible if e.g. an external SQL server needs to be told that the operation should be canceled?


Curl supports a lot of protocols, including surprising ones like LDAP, SMTP and POP3, so there is no exact curl replacement anywhere, but Rust already has libraries for every protocol that Curl supports.

Hyper is a pretty robust HTTP toolkit, and reqwest is a higher-level library on top of it.


It's probably doing two things:

1. simulates texture filtering and dithering hiding low resolution and low number of colors in textures, and

2. renders two or four columns at once.

Amiga had planar graphics, which did not support setting individual pixels. To set a pixel you'd have to set appropriate bit in up to 6 bytes (64 colors max) scattered around in memory. Writing one byte modified one bit of 8 adjacent pixels, which was terrible for textured 3D graphics.


Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: