Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
btrask
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
63 ms
·
241.
▲
by
btrask
10y ago
Varints are widely used in databases. https://www.sqlite.org/src4/doc/trunk/www/varint.wiki
242.
▲
WebAssembly playground
(ast.run)
3 points
by
btrask
10y ago
|
0 comments
243.
▲
by
btrask
10y ago
Genuine question: what do you do when you want to implement your own loop mechanism, iterator, array type, or whatever?
244.
▲
by
btrask
10y ago
The whole point is that they are finding real evidence through illegitimate means. If you try to say they are fabricating evidence out of whole cloth, no one will believe you.
245.
▲
by
btrask
10y ago
Suggestion: stop calling this "parallel construction" and start calling it evidence laundering.
246.
▲
by
btrask
10y ago
If you are already familiar with high-level Objective-C, I would recommend looking at the headers for the language runtime. All of the inner workings are exposed as C functions you can play with. Also take a look at Mike Ash's blog, wh
247.
▲
by
btrask
10y ago
A .h file can be compiled as C, C++, or Objective-C. Isn't that how single-file libraries usually work?
248.
▲
by
btrask
10y ago
I haven't looked at tigr yet (it seems interesting!) but could you just use '#ifdef __OBJC__'?
249.
▲
by
btrask
10y ago
C is merely flexible, not in some position of authority where it dictates what platforms must do. C would be ABI-compatible on a platform that wasn't designed for it, too (which, historically, was the case on many platforms it was port
250.
▲
by
btrask
10y ago
((void (*)(id, SEL, double))objc_msgSend)(window, sel_registerName("setAlphaValue:"), 1); If the method signature changes (unlikely for a system header, but possible if you're calling into your own code) then you&#x
251.
▲
by
btrask
10y ago
I was referring to this part of your original post: > It's also easy to make mistakes because of type mismatches. For example, if you pass `42` to a CGFloat parameter, this works fine when you cast msgSend to the right type, but wil
252.
▲
by
btrask
10y ago
I said you're right and I wasn't trying to disagree. I'm also a big fan of your blog and comments here (FWIW). As for whether casts add much safety, I admitted it's debatable. C++ prefers casts (e.g. on malloc) whereas C
253.
▲
by
btrask
10y ago
Even on a platform that wasn't based on C, the C standard is flexible enough to match pretty much any native ABI. That's a small (and under-used) upside to all of that undefined behavior.
254.
▲
by
btrask
10y ago
You're right and thanks for the correction. One point I'd add is that C generally encourages not using casts because casts themselves can be error-prone. So it's debatable whether it adds any real type-safety.
255.
▲
by
btrask
10y ago
There was a thread the other day where people were talking about languages that were easily interoperable with the "C ABI" (although there is no such thing). Languages listed included C++, Rust, and maybe a few others--but no ment
256.
▲
by
btrask
10y ago
I wish you were joking.
257.
▲
History of the bicycle
(en.wikipedia.org)
1 points
by
btrask
10y ago
|
0 comments
258.
▲
by
btrask
11y ago
My counterfeit Dell charger (with 1Wire) just died after working great for 2 years (although yes, it was probably dangerous). Because of DRM I couldn't attach the plug to a different power supply (as shown to me by an EE I trust). Now
259.
▲
by
btrask
11y ago
Out of curiosity, how many notes? No suggestions, sorry.
260.
▲
by
btrask
11y ago
Twitter should be a dumb pipe. Something like twtxt[1], except trivially easy to host, and searchable, and (the hard part) with all of Twitter's users. [1] https://github.com/buckket/twtxt
261.
▲
by
btrask
11y ago
This appears similar to the "virtual filesystem" SQLite uses for testing[1], except of course this one is open source and easily reusable, since it exposes a regular filesystem interface via FUSE. This is fantastic news for every
262.
▲
No Compiler – On LLVM, and writing software without a compiler
(msm.runhello.com)
193 points
by
btrask
11y ago
|
71 comments
263.
▲
by
btrask
11y ago
Putting too much "emphasis" on certain parts of the graph is precisely what starting the axis at zero is supposed to protect readers from. Context is what we're trying to see! Edit: And in this case it wouldn't have hurt
264.
▲
by
btrask
11y ago
> You can not, for example, implement a distributed counter in git that works by committing changes to a file that add a line with a number in it. If two git instances commit adding the same number based on the same parents at the same t
265.
▲
by
btrask
11y ago
> Which simply doesn't work because timestamps are not unique to location. Yes, I know. This is okay. Whatever time you think you wrote the message at is fine. Even if your clock is off. Even if you lie. That is (part of) the mess
266.
▲
by
btrask
11y ago
Content hashing doesn't rely on timestamps to act as a unique identifier. It relies on all of the content , which may (or may not) include a timestamp, depending on your application. To the degree that collisions occur, that's a
267.
▲
by
btrask
11y ago
They're events, but no ordering is assumed, guaranteed, promised, implied, or enforced. The timestamps, if you choose to use them, are only for determining message identity (equality) and thus can be as accurate or inaccurate as releva
268.
▲
A Lot of Security at Apple (2009)
(pagetable.com)
1 points
by
btrask
11y ago
|
0 comments
269.
▲
by
btrask
11y ago
No one is talking about ordering events.
270.
▲
by
btrask
11y ago
You need to think about what makes messages distinct. Content addressing will help you as long as you have a rigorous definition of identity, which you might otherwise be doing ad-hoc when you assign UUIDs. If the same message is meaningful
More ›