6,070 karma · joined November 5, 2013
Except that they're absolutely huge and heavy for any halfway decent screen size and resolution. If I were to replace my two 24-inch screens with CRTs, I'd need a second desk for them alone.
It's not that hard to understand. Here, I've linked it for your convenience: https://news.ycombinator.com/item?id=49765890
I'll file this under "blatant lie" unless you can provide at least three reliable sources for your claim.
This may sound like a loaded question, but I assure you, that's not my intention. If you want to provide for those "invisible" homeless, who aren't drug addicts or mentally ill, shouldn't the primary volunteer pool consist of exactly those invisible homeless people? Or in other words, once you have organizers, why do you need external volunteers for cleaning the showers?
I do. I grew up with 5 siblings, and having brothers and sisters is very, very different from having your own children. My relation with and my emotions towards my children is very different from my relation with and my emotions towards my siblings, both now and when I was still living with them in the same house.
You're describing a commodity. However, the commodity isn't the tokens, but the compute capacity, i.e., serving a model. And compute capacity isn't a currency — at least not, until you can acquire compute capacity from one party and exchange it with another party.
dgellow is absolutely right: tokens aren't a currency, nor can you trade them, nor are they fungible. The original claim that "tokens are just a type of currency" [1] makes no sense.
That would make society better, I agree, but I don't see how that would lead to a reduction in theft, or crime in general.
> And if you are still worried about theft in the mean time, you could try looking at wage thefts […]
I'm not worried about wage theft, no. I am worried about theft of my personal property, though. And I notice that you haven't proposed any credible path to reducing it, beyond an incredibly generic "make society better", whatever that means and however you want to achieve that.
Phew, good to hear. Here I thought it would be a hard and complex problem, with lots of unknown unknowns, difficult political compromises, a generation-spanning efforts and many potential solutions with uncertain outcomes, partially contradicting each other.
Instead, we just have to make society better. So, what's step 1?
You're just splitting hairs and trying to weasel around the fact that yes, you really can create any lifetime you want using unsafe.
> Not sure what you meant by this example since it doesn't compile.
That's because the crappy HN formatting ate some of the characters. Here's the original version:
https://play.rust-lang.org/?version=stable&mode=debug&editio...
> What you probably meant is […]
If you know what I meant, then what's up with your snarky comment about "So much for effectively disabling stuff"? In your playground link, you did effectively disable the borrow checker in safe parts of the code. Next thing you're moving the goalpost, now it's not about external, static analysis tools: "run this with UBSAN, ASAN, and other C tools". I don't think you're arguing in good faith here. Goodbye.
> Does bun actually do anything insane like that in its unsafe blocks?
Who knows? At 10k unreviewed uses of unsafe, I'd guess there are quite a few incorrect ones. LLMs don't produce perfect code (neither do humans), so there's a high probability that at least some of those create UB.
No, you're wrong: You can create any lifetime. Proof:
fn oof<'desired>(x: &u32) -> &'desired u32 {
let ptr = x as *const u32;
unsafe { &*ptr }
}
This will take a reference and return it with any lifetime specified by the caller.> You don't disable anything.
I said "effectively disable". For example:
fn trust_me_bro<'a>(x: mut u32) -> &'a mut u32 { unsafe { &mut x } }
fn main() {
let mut x = 1_u32;
let reference_a = &mut x;
let reference_b = trust_me_bro(reference_a);
*reference_b = 2; -- Whoops
println!("reference_a: {reference_a} reference_b: {reference_b}");
}
After the call to trust_me_bro, two aliasing, mutable references exist simultaneously. This would usually be prevented by the borrow checker, but the unsafe code has effectively disabled it.It isn't necessary, because settings timeouts or other resource restrictions works way better to prevent DoS.
It isn't sufficient, because even if you can prove that a program will halt at some point, this alone doesn't tell you how long it will take. What good does it do to know that the program will run for 10 years before it halts? By that time, service will already have been denied. Even turning hash table lookups from O(1) to O(n) (still very much terminating!) can result in a DoS.