The first iteration of the Rust compiler was written in OCaml…
The first iteration of the Rust compiler was written in OCaml…
Hmm, I don’t know anything about Whoogle, but from other privacy-conscious search engines, I would expect it to work when you use that URL in your bookmark.
Three things I can imagine:
You don’t want to use exceptions in normal control flow, because they’re extremely slow. Every time you throw
an exception, it has to collect a stacktrace, which is hundreds, if not thousands, of calculations, compared to a handful of calculations for returning a boolean or an enum variant.
Interesting. I almost guessed that variant, too, but figured it would be a bit too wild for a country to auto-adopt most laws that another country implements. 🙃
I’m more surprised that it even got offered there. There’s some legal hurdles to clear for selling in a new country, and I guess, one of their distribution platforms decided it was worth it.
I guess, the Vatican might not have a ton of laws, though…
Codeberg also does have Pages.
Still uses Git, but yeah.
When I was around 3 years old, me and my not much older brother decided to walk across town, where our mum was visiting relatives.
I was missing mummy, which was technically not an emergency, for which we were supposed to phone those relatives.
We had been raised very well, you see. 🙃
What I don’t like about the genre, is that I’m bad at it. 🙃
More seriously, I do find it kind of frustrating at times. Restarting ten times in a roguelike, no problem, because it’s always a new challenge.
But if I miss the same jump ten times, or have to retry the same platforming passage ten times, you’ll see me getting impatient, which means I’ll fail the next ten attempts, too…
I, unfortunately, have to use GitHub at $DAYJOB and this is me. I navigate most of the webpage via the URL bar now.
Basically, let’s say I’m working on a repo github.com/tomato/sauce/
and want to navigate to the Releases page.
Via the webpage:
github.com
into the URL bar.tomato/sauce/
in the list of recent repos, even though it’s the only repo I work on.tomato/
org.tomato/
org.sauce/
repo in the list.Via the Firefox URL bar:
gi→t→s→r→
.I admit, it’s hard to compete with the latter, but I wouldn’t know how to navigate that way, if the former wasn’t so terrible.
Personally, I’ve found Poetry somewhat painful for developing medium-sized or larger applications (which I guess Python really isn’t made for to begin with, but yeah).
Big problem is that its dependency resolution is probably a magnitude slower than it should be. Anytime we changed something about the dependencies, you’d wait for more than a minute on its verdict. Which is particularly painful, when you have to resolve version conflicts.
Other big pain point is that it doesn’t support workspaces or multi-project builds or whatever you want to call them, so where you can have multiple related applications or libraries in the same repo and directly depending on each other, without needing to publish a version of the libraries each time you make a change.
When we started our last big Python project, none of the Python tooling supported workspaces out of the box. Now, there’s Rye, which does so. But yeah, I don’t have experience yet, with how well it works.
Python never had much of a central design team. People mostly just scratched their own itch, so you get lots of different tools that do only a small part each, and aren’t necessarily compatible.
Yeah, Google likes to guess the language preference based on the IP address, which thankfully never goes wrong.
I’m curious to see, how long it’ll last. Much like with a support hotline, there’s no directly obvious financial benefit to having such a chatbot, so if the hype has died down and the price is increased, I could see those being axed pretty quickly…
Yeah, I thought so, too, but I got that from here on Lemmy, so maybe we both read the same misinformed comment.
I think, it’s cool, though, that the official Thunderbird app can be published on F-Droid.
I’m not seeing it in my just-upgraded “Thunderbird Beta for Testers”.
Ah, yeah, I don’t think there was anything in the app. I guess, they could’ve mentioned it in the changelog, which gets shown in the app by default after an update.
But yeah, I think we’ll have to excuse a bit of a bumpy ride here. I know, it says “Mozilla” on there now, but to my knowledge, it’s still just the one core dev…
I’m not sure, if I’m misunderstanding, but the K9 devs definitely talked about it: https://k9mail.app/2022/06/13/K-9-Mail-and-Thunderbird
If you’ve got specific accounts you want to follow, you can get an RSS feed containing their public posts.
In terms of native clients, the closest such feature I know of, is that Fedilab (for Android) can remember your position in the timeline, so that you can resume reading.
If you primarily use one timeline, then you wouldn’t re-encounter already read posts, because they’re in the past from the remembered position.
I have to say, though, that it’s not the most reliable feature in the world…
In case you like feature-rich software, QuiteRSS is good.
I find these videos give a very visual explanation and help to put you into the right mindset: http://intorust.com/
(You can skip the first two videos.)
Sort of when it clicked for me, was when I realized that your code needs to be a tree of function calls.
I mean, that’s what all code is anyways, with a main-function at the top calling other functions which call other functions. But OOP adds a layer to that, i.e. objects, and encourages to do all function calls between objects. You don’t want to do that in Rust. You kind of have to write simpler code for it to fall into place.
To make it a bit more concrete:
You will have functions which hold ownership over some data, typically because they instantiated a struct. These sit at the root of a sub-tree, where you pass access to this data down into further functions by borrowing it to them.
You don’t typically want to pass ownership all over the place, nor do you typically want to borrow (or pass references) to functions which are not part of this sub-tree.
Of course, there’s situations where this isn’t easily possible, e.g. when having two independent threads talking to each other, and then you do need
Rc
orArc
, but yeah, the vast majority of programming problems can be solved with trees of function calls.