masklinn

Joined 17 years ago

Karma
69,046
Submissions
21,064
Member since
Apr 25
View on Hacker News

Recent submissions

Comment · 2 days ago
Gmail? I don’t recall that being an acqui.
Comment · 5 days ago
Around here late morning to mid afternoon (11 am to 4 pm) is now off-peak, alongside the old 10pm to 6 am.
Comment · 9 days ago
I thin the part that you missed is that a MutexGuard is an owned value. That’s the gain of having a mutex guard projection, the projection is an owned type which keeps the lock, well, locked. Having a field projection return a reference is no use because… that already works fine today, it’s deref. But that does not work if you need an owned reference. Same for field projecting everything else e.g. an arc.

> A field in the RenderState should not have a guard unless it has its own mutex!

I don’t agree with that. The original mutex gives access to the field via its guard, nothing wrong with keeping the guard and the field and getting rid of the stricture around it (for the purpose of access). It’s not like mutex guards have a static identity relationship to their mutex.

Comment · 9 days ago
I don’t know, maybe because rust is of interest to the wider Linux community and has been pretty much since its inception (https://lwn.net/Articles/547145/)?

And with the inclusion of rust in the kernel, and thus the kernel’s need to express its own abstractions and requirements (as well as the impossibility to use alloc and thus box) the limitations (ergonomic and otherwise) of “userland” smart pointers are more salient and relevant than ever.

Comment · 9 days ago
> Rather, introducing even more potential implicitness on every `.` seems like it would make the language harder to learn.

The problem is that built-in pointers (references and box) are already special cased in the compiler to Just Work (tm), so this creates confusion when switching between those builtins and third-party pointers, or even stdlib pointers which aren’t special cased by the compiler.

So this is less about “potential implicitness on every .” and more about making places more first-class, and non-builtin smart pointers (both first and third class) being better able to express their semantics to the compiler, to lift every pointer to the ergonomic capabilities of builtins.

Comment · 11 days ago
There are many ways to preserve apples even without refrigeration (sauces, jams, jellies, juices, canned slices, dehydrated, ...). Also the right varieties of apples ("winter apples") store fine for months, some in excess of a year, in a cool and damp cellar. Hell they have rather fallen out of favour but there are actually varieties which must be aged before being any good, they're close to inedible off the tree (if you have access to a heirloom distributor's listings, look for varieties where both harvest and consumption times are listed, they're usually months apart).

And the average cooking or dessert apples doesn't make for great cider. While sugar is important (and cider apples can have more than dessert or cooking apples), tanins, acidity, and phenols are also very useful to cidermaking even though they make the apples themselves rather unpalatable.

Comment · 11 days ago
Historically non-edible apples (grown from seed, as well as dedicated cider apples) are widely available and only useful for cider, so it would be a waste of an edible apple to make cider out of it.
Comment · 12 days ago
> Ironically Oracle [...] is now being the good guy.

Reminder: oracle is also an acronym, and you might want to take a gander at what its subject is up to.

There is no future in which oracle is the good guy no matter the axis. Least of all the subject of AI.

Comment · 12 days ago
> You either accept

That is a false dichotomy. Some enumerations have reasons to likely change in the future, others (most) either have no such thing or their changing would be so impactful to the system it needs to be signaled loudly.

That’s really no different than any other type information.

> It's always a tradeoff and you can also always fork or propose your own improved version of the concept

You are the person asserting that the concept as defined is incorrect.

Comment · 12 days ago
Not really.

Defaulting to exhaustive pattern matches is correct, it’s by far the most frequent case (which is why essentially every modern language does that); being able to prevent exhaustive matching is useful for libraries; and using a private subclass is a completely obvious way to implement that in Java.

See private extensible variants for the same capability in OCaml. Or the non_exhaustive attribute in Rust. Or the nonexhaustive attribute in Swift (or alternatively opting into library-evolution which reverses the defaults).

Comment · 12 days ago
The european rabbit (and the domesticated rabbit, which descends from it) is native to the Iberian peninsula. There are ~20 extant species called rabbits all over the world (most though not all leporids outside of Lepus, the true hares).
Comment · 12 days ago
Rabbit is a pretty important part of traditional Maltese cuisine, rabbit stew is often considered a national dish, fried rabbit is also fairly common.

First time I heard of rabbit being considered to taste like chicken, they taste nothing alike.

Comment · 13 days ago
> But the format could be used with a lenient parser if anyone wanted that

Congratulation on reinventing HTML.

Comment · 14 days ago
Comment · 15 days ago
> the surface could not be tempered glass […] a sheet of which costs maybe $30 per square foot, but a special, newly created material called Dekton that cost five times as much

Seems like he’s giving a ballpark of 150 here.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton