pileghoff

joined 1 year ago
[–] pileghoff@programming.dev 6 points 1 year ago

I think this is enviable with low level languages. You simply can't abstract away as many things.

[–] pileghoff@programming.dev 1 points 1 year ago

Keil, of course.

[–] pileghoff@programming.dev 24 points 1 year ago* (last edited 1 year ago)

Async rust might suck, compared to async in higher level languages, but for someone comming from C, async rust simplifies a lot of stuff. It often feels like a lot of criticisms of rust boils down to the fact that rist was sold to both people using low and high level languages. I don't doubt that async rust is shit when all you want is a faster typescript.

Edit: I certainly also have my criticisms of rust and its async implementation, and I think some of the authors concerns are valid, it was just an observation about the tension between the needs of the two groups of users.

[–] pileghoff@programming.dev 20 points 1 year ago (2 children)

I usually use Json5. It's JSON, but with all the weird quirks fixed (comments added, you can use hex numbers, you can have trailing commas etc.)

[–] pileghoff@programming.dev 1 points 1 year ago (1 children)

Sadly, this does not seem to be the norm in my experience. I have not attemped to adding this myself, but I wanted to ask: are there any hurdles or other good reasons to not just adding this to every create? Why isn't it the default?

[–] pileghoff@programming.dev 4 points 1 year ago (5 children)

Is that always suppose to be shown? My counter example (the one that prompted this thread) is embassy_executor::Executor. When looking in the docs i dont see anywhere that its locked behind a feature flag, you have to look in the source

 

I have a written a bit of rust by now, but one problem I always seem to encounter it that the features a create supports never seem to be documented. Neither what features are available, what they each do or which are default. Is that really the case, or am I missing something?

I constantly seem to include something from the docs, only to be told by the compiler that it does not exist, and then I have to open the source for the create to figure out if it's hidden behind a feature flag.

Also, is it really true that I can't disable a single feature from the default set, without having to copy the default list and manually removing it?

[–] pileghoff@programming.dev 4 points 1 year ago* (last edited 1 year ago) (1 children)

How would they add runtime checking without breaking all existing code?

But I think warning people is a good start, because those checks can be added to your CI pipeline and reject any incoming code that contains warnings. That way you can enforce type checking for a subset of modules and keep backwards compatibility.