Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
roblabla
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
22 ms
·
241.
▲
by
roblabla
5y ago
I suspect you know this, but for anyone not aware: Rust's equivalent to golangci-lint is Clippy, which is distributed as part of Rust (at least, with rustup, it comes with the compiler in the default configuration). You have to run it
242.
▲
by
roblabla
5y ago
If the PDF contains encrypted blocks, this won't work, as simply zeroing out the bits will break the file. Even worse, if the PDF contains compressed chunks (which happens often enough), such a naive approach won't work either - t
243.
▲
by
roblabla
5y ago
Essentially, it allows calling eval[1] and executing "privileged loads"[0] in some elevated contexts (the System Principal, which is responsible for the browser UI[2]). Those are useful mitigations, but disabling them for some c
244.
▲
by
roblabla
5y ago
Yes, for what it's worth I don't mean to diminish your experience. Nix definitely requires pouring a lot of time to get to a working state, is very under-documented, has terrible error messages, will cause errors that don't e
245.
▲
by
roblabla
5y ago
I am all-in on nixos. I've also experienced those problems, but I for one am glad that those don't work. Let me explain. My use-case for Nix is to make my build system so reproducible that, if I get back to the project in five yea
246.
▲
by
roblabla
5y ago
In current Rust, you'd do it with an unsafe std::mem::transmute - possibly using a crate that wraps this call behind a safe interface that asserts that alignment and size are correct, and that your type doesn't have any padding, e
247.
▲
by
roblabla
5y ago
The Nintendo Switch operating system, Horizon/NX, is a capability-based microkernel architecture. It's nowhere near unusably slow. In fact, its performance are pretty good. It does "cheat" a bit in that the whole OS runs
248.
▲
by
roblabla
5y ago
this kinda depends. I'm not 100% sure what kind of "law" the GDPR, but if it's a directive (which I think it is?), then each member state must implement a law that satisfies the GDPR requirements. Member states may chose
249.
▲
by
roblabla
5y ago
Depends on what you mean by "definition". They say[0] they only accept ads that do not disrupt the reading flow, can be distinguished from the rest of the content, and has a reasonable size (all clearly defined). (They also have m
250.
▲
by
roblabla
5y ago
They're one of the top, if not the top, cloud providers. It's not surprising to mention AWS here, and GP also mentions Azure...
251.
▲
by
roblabla
5y ago
Not OP, but I do want to note, there is a difference compared to windows: Windows has a stable driver interface, which makes it at least possible to have drivers that are basically guaranteed to be future-proof. Linux has no such stable A
252.
▲
by
roblabla
5y ago
Thanks for the answer, that's really informative! > In my opinion, investing in a proper driver architecture with a stable interface would be a massive step toward better Linux hardware support and broader adoption. Eh, I have mixed
253.
▲
by
roblabla
5y ago
> Sure, you can be preempted by another thread (or even process) even within an async function That really depends on the platform. Async rust is also being leveraged to build RTOS on embedded platform for instance. If async rust was pre
254.
▲
by
roblabla
5y ago
> just a little bit too niche to justify a place in the standard library parking_lot has actually been considered for inclusion in libstd[0], as a better alternative to the native mutex implementation (parking_lot mutex are smaller, can
255.
▲
by
roblabla
5y ago
I'm curious what drivers you've had to compile? The only ones I've ever had to compile were GPU drivers for very very recent cards. On my current laptop, the only thing that doesn't work is the fingerprint reader (which
256.
▲
by
roblabla
5y ago
It doesn't bundle it though, it uses the one that comes by default on the OS. Which is already a huge improvement, because it should, in theory, be able to share resources across different apps (e.g. the DLL should only be loaded once
257.
▲
by
roblabla
5y ago
WebKit, WebKitGTK and WebView2 are all webkit-based too currently. WebView2 was always chromium-based afaict, I think the old trident-based edge had a separate control. Also, on the web, firefox still exists.
258.
▲
by
roblabla
5y ago
That is nor necessarily the case. Embedded is a big user, but there are other reasons to use no_std, such as explicitly wanting to avoid heap allocations, or wanting greater control over the native APIs being called.
259.
▲
by
roblabla
5y ago
> Trying to make the library more object-oriented exposed a "drum-stick" design issue: does play(drum, stick) translate to drum.play(stick) or stick.hit(drum)? In cases where OO doesn't make sense, the solution is to simpl
260.
▲
by
roblabla
5y ago
Those would be considered kernel bugs though, and should be getting fixed when reported. While a crash in a kernel module is just a bug in the kernel module itself
261.
▲
by
roblabla
5y ago
Python is all but "easy to embed" - for one thing it's huge , and it requires linking to native libraries which may conflict with your own (openssl comes to mind). It also has an unstable ABI (and even API in some cases). Lu
262.
▲
by
roblabla
5y ago
Wait, what's the point of a secret patent though? Like I get the point of keeping military innovations secret, but patents are supposed to be a trade where the government offers a limited-time monopoly on a technology, in exchange for
263.
▲
by
roblabla
5y ago
Err, no? Most languages will make a copy for scalar values (e.g. ints), e.g. Javascript and python do that. C++ and Rust go further and provide the user the ability to take the arguments by value or reference, even for classes/structs,
264.
▲
by
roblabla
5y ago
Honestly, as a hobyist, I'd really recommend looking into Ghidra. It's really great, can be modified to suit your needs much more easily both thanks to its open source nature but also because of its really good API (IDA's scr
265.
▲
by
roblabla
5y ago
The drafts are available in openstd, both of older versions of the standard[0], and the next, upcoming version[1]. Those are not technically the actual standards, but they're pretty close. But yes, I too dislike the fact that ISO sta
266.
▲
by
roblabla
5y ago
> this means that the relevant kernel thread woke up from epoll_wait() or something similar. With blocking I/O, you call read(), and the kernel wakes up your thread when the read() completes. With non-blocking I/O, you call rea
267.
▲
by
roblabla
5y ago
Because competing with steam through exclusive deals and free games is not competing, it's racing to the bottom. I don't see any actual improvements or innovations in the Epic Games Store, it looks like a pure money grab.
268.
▲
by
roblabla
5y ago
EULAs are also used to protect IP, such as by prohibiting reverse engineering. Preventing reverse engineering would prevent modding games, fixing bugs in software that aren't supported anymore, security analysis, etc... In my view, it&
269.
▲
by
roblabla
5y ago
The problem is rarely the author going rogue, but rather their accounts getting hacked, and the hacker pushing a malicious update to an existing package. Vetting the author won't really help, you need to vet the updates.
270.
▲
by
roblabla
5y ago
Khronos is pushing for SPIR-V, which isn't a language but a bytecode. There are a lot of good reasons to do this: It allows innovation for shading languages to take place as anyone can build their own language and compile it down to SP
More ›