Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
kbolino
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
31.
▲
by
kbolino
4mo ago
There's another big one, 4K page support. The MMU can be told to set up a virtual address space with smaller, x86-compatible 4096-byte memory pages instead of the default 16384-byte pages.
32.
▲
by
kbolino
4mo ago
The entire existence of 32-bit x86 Macs is in and of itself a tragedy of Apple's own making. Intel shipped the Core 2, a 64-bit CPU widely regarded as one of the company's greatest products, later in the very same year that Apple
33.
▲
by
kbolino
4mo ago
For example, you have an envelope format that goes: length prefix in LEB128, message, signature. One party controls the length prefix and signature, a different party controls the message. The message-writing party carefully crafts the mess
34.
▲
by
kbolino
4mo ago
Generic interfaces already exist. Generic interface methods, which would be relevant, are not planned. The reason is outlined early in the proposal: nobody knows how to implement them efficiently. Rust has the same problem, for what it'
35.
▲
by
kbolino
4mo ago
Indeed, I ran two tests (missing indirect dependency, stale indirect dependency version) and it refused to compile both. Either what I said was never true, or it was only true for earlier versions of the `go` command. Nevertheless, adjusted
36.
▲
by
kbolino
4mo ago
There is something you can do to stop it actually. You can use a replace directive, specifying that a module is replaced by itself at a fixed version. See e.g. https://stackoverflow.com/a/77412524/814422 It is wor
37.
▲
by
kbolino
4mo ago
Though there may be other reasons not to use it, invokedynamic is not a new feature of the JVM. If they're targeting 1.8 binary compatibility, they certainly have it at their disposal, since it landed in 1.7.
38.
▲
by
kbolino
5mo ago
I also don't know a whole lot, but yes, they both are ultimately implemented as families of client-server protocols over Unix domain sockets (X11 also supports TCP). Inasmuch as you are content with targeting a single version-set of th
39.
▲
by
kbolino
5mo ago
I've been intrigued by the possibility of statically compiled games for Linux but I don't think they're the more compatible option. For typical games and players, the game needs to cooperate and interact with the window sys
40.
▲
by
kbolino
5mo ago
There's two problems as I see it. The first is that value types themselves are immutable. This affects code generation and optimization. If you were to modify the value with unmanaged code then you may not observe the modification prop
41.
▲
by
kbolino
5mo ago
For whatever it's worth, you don't have to write anything special to handle the reference system, because the final, published version of RFC 7946 only allows WGS84 anyway.
42.
▲
by
kbolino
5mo ago
The other nice thing about rg and fd is that they work natively on Windows.
43.
▲
by
kbolino
5mo ago
> Path names are UTF-8-encoded, unrooted, slash-separated sequences of path elements, like “x/y/z” This is only for the "io/fs" package and its generic filesystem abstractions. The "os" package, which a
44.
▲
by
kbolino
5mo ago
> There is no realistic risk of a SHA collision attack. Indeed. To illustrate why: 1. It is not possible to "retroactively" find a SHA-1 collision for an already known hash. If somebody has produced a SHA-1 hash non-maliciously
45.
▲
by
kbolino
5mo ago
No, at least according to Bitwarden themselves: https://community.bitwarden.com/t/bitwarden-statement-on-che...
46.
▲
by
kbolino
5mo ago
Many modern GC languages and runtimes have benefited greatly from improved escape analysis, which identifies memory allocations that have short, identifiable lifetimes, and removes those from the GC-managed heap entirely. Of course, many GC
47.
▲
by
kbolino
5mo ago
Floating-point non-determinism issues usually come from one of these sources: - Inconsistent use of floating-point precision, which can arise surprisingly easily if e.g. you had optional hardware acceleration support, but didn't trunca
48.
▲
by
kbolino
5mo ago
Sure, but that operator can propagate a carry all the way to the most significant bit, so a check for bitwise equality after "strip[ping] few least significant bits" will yield false in some cases. The pathologically worst case fo
49.
▲
by
kbolino
5mo ago
I interpreted OP's "bit-cast to integer, strip few least significant bits and then compare for equality" message as suggesting this kind of comparison (Go): func equiv(x, y float32, ignoreBits int) bool { mask := ui
50.
▲
by
kbolino
5mo ago
There's another gotcha. Consider positive, normal x and y where ulp(y) != ulp(x). Bitwise comparison, regardless of tolerance, will consider x to be far from y, even though they might be adjacent numbers, e.g. if y = x+ulp(x) but y is
51.
▲
by
kbolino
5mo ago
I would never say it's impossible, and you've done some amazing work, but I do wonder if the second problem is feasibly surmountable. Setting aside cross-language interop, BYOlibc is not really tolerated on most systems. Linux is
52.
▲
by
kbolino
5mo ago
I think there's two main avenues for hardware acceleration: pointer provenance and garbage collection. The first dovetails with things like CHERI [1] but the second doesn't seem to be getting much hardware attention lately. It has
53.
▲
by
kbolino
5mo ago
Fil-C has two major downsides: it slows programs down and it doesn't interoperate with non-Fil-C code, not even libc. That second problem complicates using it on systems other than Linux (even BSDs and macOS) and integrating it with ot
54.
▲
by
kbolino
6mo ago
The FFM API actually does cover a lot of the same ground, albeit with far worse ergonomics IMO. To wit, - There is no unsafe block, instead certain operations are "restricted", which currently causes them to emit warnings that can
55.
▲
by
kbolino
6mo ago
I think these are all valid arguments, but I do want to point out that Java is addressing them. The first bullet is possible with the JetBrainsRuntime, a fork of OpenJDK: https://github.com/JetBrains/JetBrainsRuntime T
56.
▲
by
kbolino
6mo ago
For those wondering, Unity overloaded the == operator in two specific situations, such that obj == null will return true even though obj is not actually null. More details on this archived blogpost: https://web.archive.org/
57.
▲
by
kbolino
6mo ago
A web site is identified by its URL, which contains its domain. Any good HTTPS implementation cross-checks the requested domain against the SANs of the cert, and does so automatically. There is nothing in a piece of random software obtained
58.
▲
by
kbolino
6mo ago
Actually, Windows by default will not trust code signed by CAs that issue certificates to websites. It will only trust code signed by CAs that are approved for code-signing, which isn't a very large set anymore. Moreover, recent CA
59.
▲
by
kbolino
6mo ago
Both Borgo and now Lisette seem to act as though (T, error) returns are equivalent to a Result<T, error> sum type, but this is not semantically valid in all cases. The io.Reader interface's Read method, for example, specifies not
60.
▲
by
kbolino
6mo ago
Git was built to be decentralized but it ended up basically displacing all other version control systems, including centralized ones. There are still some holdouts on SVN and even CVS, and there are niche professional fields where other sys
More ›