Alas, on the whole the compiler slowed down as a result of this. I think it's a worthy tradeoff though.
No sarcasm, just an honest suggestion :)
From the Fine Readme:
This project allows you to create games for the Playdate handheld gaming system in Rust lang.
You really should preface every announcement with something like this :)
It's surprisingly simple: https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=f176852c61dcf0c3382f0ac97c26de03
As a side node, asking for a value, and then immediately calling to_string
on it seems kinda hiding the allocation. I'd suggest let the user call to_string
on it themselves.
(e) Changed it a bit to account for passing None
as the third argument.
I have an app that ultimately renders pdfs via typst. I'm starting to write tests for the output, exporting the documents to png instead and then applying something like https://github.com/kornelski/dssim or so.
(If anyone has experience with that, I'd take any hint I get ;))
Note that this is not only a cli and a (closed source) web editor, but also a library. So it's possible to embed a full typesetting library in your project, which is awesome. It's probably not on par with TeX yet, but you can already do an awful lot with it. Scripting it is really much, much easier than, say, LaTeX.
A reference IS Copy, by the simple fact that it is a primitive value on the stack.
This seems a bit misleading, noting that unique/mutable references aren't Copy
. Shared references are Copy
because it's sound to have that, and it's a huge QOL improvement over the alternative.
In fact, isn’t this not true just by the fact that references work for Strings and Strings size can’t be known at compile time?
I don't understand this. Shared references to String
are Copy
, too. This doesn't have to do anything with sizes. Rather, it's implemented in the compiler, because it's sound to have it and a huge QoL improvement over the alternative... just the same reason why e.g. usize
is Copy
, really.
is it dereferenced specifically because is Boxed on the heap?
No, it's not really related to the heap. Box
implements DerefMut
, which is in-depth explained here.
Wow, they're sort-of-targeting edition 2024. I did not expect this, holding my breath ;)
While funny, this also highlights part of why I like rust's error handling story so much: You can really just read the happy path and understand what's going on. The error handling takes up minimal space, yet with one glance you can see that errors are all handled (bubbled up in this case). The usual caveats still apply, of course ;)
Enums/Structs first, but those 2 are mixed, and any impl for them will be directly after the definition of the type itsef. Free functions last.
I did not read the whole conversation, but sorting seems a very common usecase (not mine, but seems to me a lot of people sort data), so this seems quite a broad improvement to me.
Note though, as is mentioned in the issue, that the survey showed people still prioritize runtime performance over compilation performance in general, so this tradeoff seems warranted.
It's not unheard of that regressions can be unmade later on, so here's hoping :)