Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
ragnese
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
80 ms
·
781.
▲
by
ragnese
6y ago
Rust uses a mixture of affine and ... "regular"? types. My understanding is that affine is a looser version of linear because the type doesn't have to be consumed. You can have dtors in non-affine types (types that implement
782.
▲
by
ragnese
6y ago
The stock market hit all time highs in the Great Depression, too, no?
783.
▲
by
ragnese
6y ago
> Regularly if you're doing refactoring of code. Are we talking about a published library or your internal-only code? If the former, I sympathize with the argument that relaxing a requirement should not force consumers to change the
784.
▲
by
ragnese
6y ago
I haven't watched the talk recently, but my feeling at the time was that he was just being pedantic about the definition of a sum type. Kotlin's nullable types would be example of true sum types because they are symmetric. But you
785.
▲
by
ragnese
6y ago
One of the things I like about non-managed languages is the ability to have true destructors. Releasing resources is awkward at best in Java, et al.
786.
▲
by
ragnese
6y ago
How often do you believe this really happens in practice? And does that truly outweigh the benefit of being able to define a precise contract on your APIs? How many times have you written a function and a version later said "Oh, wait.
787.
▲
by
ragnese
6y ago
You're basically just regurgitating a recent Rich Hickey talk. Interested readers can probably find it on YouTube. Rich is certainly a brighter individual than me, but some of his points are either him missing the point or being intent
788.
▲
by
ragnese
6y ago
Probably because that's the entire point of Rust and has already been blogged to death. There's nothing new to say about the borrow checker or boxing heap-allocated objects.
789.
▲
by
ragnese
6y ago
Everyone who is quasi-technical should be using uMatrix. I'm a privacy nut, but I don't think you even have to be much of one to appreciate the value that something like uMatrix provides. On the other hand, everyone keeps saying t
790.
▲
by
ragnese
6y ago
I've been saying for a while now that PHP today is basically Java - generics + better nullability and with a much worse standard library.
791.
▲
by
ragnese
6y ago
Java is not the same thing as JavaScript
792.
▲
by
ragnese
6y ago
That's still very explicit. If you don't bind the returned Result to something (`let _ = ...`), the compiler bitches at you.
793.
▲
by
ragnese
6y ago
Agreed. However, that's not exactly exonerating Mormonism or other popular religions...
794.
▲
by
ragnese
6y ago
Depends what we're talking about. A "true" memory leak (as in allocated memory that is not referenced) is not very likely. A reference cycle with `Arc`s can happen though. But if you're talking about Java and mediocre de
795.
▲
by
ragnese
6y ago
It's not wrong. I didn't mean to imply that. I just mean that saying non-GC languages are about performance overhead of the garbage collector is missing the point. Sometimes, it's convenient and easier to reason about stuff w
796.
▲
by
ragnese
6y ago
Tell this to someone who has had to fiddle with JVM GC parameters. Whatever language you're using, you probably should care a little bit about your memory patterns.
797.
▲
by
ragnese
6y ago
I'm glad to see this post here. Just because I hear/read a lot of people outright dismiss Rust's potential here with arguments that kind of miss the point: 1. You don't need CPU performance for most web stuff. It's
798.
▲
by
ragnese
6y ago
I don't have that much to add to the discussion, really. I just wanted to ruminate on something: > I've often wondered how this can be possible, given that to me it's such an obvious glaring issue that all the other cited
799.
▲
by
ragnese
6y ago
That's a good point. The ownership patterns are basically compiler-enforced best-practices of C++. Fair enough.
800.
▲
by
ragnese
6y ago
> When I mention Rust having the marks of a being from the C++ world, I'm referring to a property of the language that it shares with Swift. But what property is that? > I saw where Hejlsberg once said that he doesn't get wh
801.
▲
by
ragnese
6y ago
I guess some other people here are assuming malintent with your question. Assuming that the answer might be condescending or dismissive depending on how I answer. I'll assume that's not the case and that you simply want to know so
802.
▲
by
ragnese
6y ago
Can you elaborate on the underdiscussion of Rust as a byproduct of the C++ world? I'm into Rust, so I guess I assumed it was common knowledge that it was originally written to be like OCaml with better concurrency, and that one of the
803.
▲
by
ragnese
6y ago
It's because it also has expressiveness features that Java and Go don't. * Better handling of "null"-ness * Sum types * Stricter/different error-handling * Move semantics, which can actually be nice for some APIs ou
804.
▲
by
ragnese
6y ago
There's more recent debate about what a "unit" is. The parent reply is not wrong. We're just using different definitions.
805.
▲
by
ragnese
6y ago
Thank you. I've forgotten some of the terminology, since I haven't thought about real math in a few years. :(
806.
▲
by
ragnese
6y ago
f(x) = 1/x is also defined over what we call the "extended reals" which is just R + inf. But, I don't think what you said is quite right, either. If you define f(x) = 1/x over the non-zero reals, then the range does
807.
▲
by
ragnese
6y ago
> What differentiates addThreeTimes(i) from sqrt(x) or average(x,y) or pow(x,y) or multiply(x,y)? Not how many call sites it has, nor the presence of a dedicated operator to the function in the language. Instead, I'd say: the functi
808.
▲
by
ragnese
6y ago
I agree with your point and your edit. The inheritance thing is very similar to what I'm talking about!
809.
▲
by
ragnese
6y ago
I can't help but wonder if we're sometimes using the wrong words for things. In this discussion we keep talking about "code duplication" and "abstraction" hand-in-hand, but I think they're almost orthogona
810.
▲
by
ragnese
6y ago
For backend? Kotlin. Hands down. All the benefits of the mature Java ecosystem, but with a language that is vastly superior to Java, itself. You get coroutines, threads, strong static typing, etc. Not the perfect type system, because it
More ›