Viewing profile — ryanpetrich
ryanpetrich
HN member- Joined
- Fri, Aug 07, 2009, 5:48 AM UTC
- HN karma
- 972
- Public activity
- 416 items
- HN profile
- View on Hacker News ↗
About ryanpetrich
No profile information was provided.
Recent public activity
-
comment
Comment #46071831
Should throw expressions ( https://github.com/tc39/proposal-throw-expressions ) ever make it into the JavaScript standard, the example could be simplified to: const env_var = proce…
-
comment
Comment #42841564
aligned_alloc is a C function. It doesn't help the compiler prove that two pointers can't alias. restrict is the keyword that does.
-
comment
Comment #42360600
This is to suppress a compiler warning that the k_sz argument is unused.
-
comment
Comment #42347144
The bigger problem is mutability. Any pointers into the bit-packed enum storage become invalid as soon as you change its type. To solve this you can either prohibit pointers into b…
-
comment
Comment #40303134
Memory barriers don't force a flush of all CPU cache. They will enforce the ordering of memory operations issued before and after the barrier instruction, preserving the contents o…
-
comment
Comment #38927263
Yes, that's right. You need to update the entire OS for a minor security fix to iMessage.
-
comment
Comment #37745028
Thanks for writing this. It takes a deep understanding to explain such complicated concepts in an accessible way. Reading it brought back fond memories of hacking on jailbreak proj…
-
comment
Comment #35173339
Go's internal linker is much faster than the system linker thanks to some go-specific optimizations. Go must fall back to the system linker whenever CGO is used.
-
comment
Comment #30745740
If best effort is good enough and your use case doesn't require robustness, reading out of host /proc certainly works. Tracking execs with hooks in the kernel's internal exec mecha…
-
comment
Comment #30728096
It's not robust at all. Programs can and will exit before the userspace daemon is able to read from /proc. Malicious programs can even attribute their network activity to any progr…
-
comment
Comment #28951401
This is what ETags are for. Upon a user's first visit the server should return an ETag uniquely representing the current version of the page. The browser will cache both the page a…
-
comment
Comment #28889972
A benefit of storing the reference count in the high bits is that overflows will never corrupt the flag bits and can be detected using the processor's flags instead of requiring a …
- story
- comment
-
comment
Comment #23607362
Apple's recent aarch64 implementations don't support any of the 32 bit ARM instruction sets, and aarch64 is a significant departure from armv7
-
comment
Comment #23369663
It's pluggable in that large parts of it can be replaced or disabled at compile time. Runtime reconfiguration isn't well supported.
-
comment
Comment #22798508
Another option: git log --all --author=`git config user.email` --oneline --decorate
-
comment
Comment #22091537
Crystal is not Ruby, nor is it anywhere near as fast as C.
-
comment
Comment #21861261
BPF programs can be attached to uprobes and thus much of the same tooling applies to userspace as well.
-
comment
Comment #20659491
Being further away from killers that I'm equally likely to be victims of isn't any more comforting.
-
comment
Comment #20312884
It’s also dangerous in JavaScript where properties of the Object prototype can mistakenly be dereferenced instead of the default/fallthrough case.
-
comment
Comment #20229099
There's also the matter of someone forcibly pulling a machine's power cord. In some sense exit cleanups are fundamentally unreliable.
-
comment
Comment #19919861
That's likely due to amp-font, which will wait a certain amount of time for custom fonts to load before continuing with a fallback browser font (see: https://amp.dev/documentation/…
-
comment
Comment #19682535
Cassandra’s sets, lists and maps are already CRDTs
-
comment
Comment #19478050
The code to run in the worker is passed as a string or a path, so no data can be captured. Data can be sent to the worker by posting messages, but the data is never shared—only cop…