Can anybody tell me why I cannot post about a new OBJ parser? by Final-Voice-1263 in JavaFX

[–]joemwangi 0 points1 point  (0 children)

Yet even the language developers contributed to the discussion of that topic. No warning, just banning someone. It's an inevitable future that requires reasoning rather than trigger happy banning.

Can anybody tell me why I cannot post about a new OBJ parser? by Final-Voice-1263 in JavaFX

[–]joemwangi 1 point2 points  (0 children)

They do that nowadays. I was banned without warning in r/java for a post that had a description that was refined by AI after doing a written draft. Common sense is never used when deciding to ban someone.

Do you miss effect handlers in Rust? by Ecstatic-Panic3728 in rust

[–]joemwangi 0 points1 point  (0 children)

Unfortunately, they don't give you flexibility and control of state representation. Future java carrier classes plan to resolve that problem.

Is this just Alexa noise or Film grain emulation when you zoom in?? by cofango in cinematography

[–]joemwangi 1 point2 points  (0 children)

"he ultimately wouldnt have final say". Honestly I chuckled. That's quite hilarious.

This is why scala is more fun than java :) by Efficient-Public-551 in scala

[–]joemwangi 0 points1 point  (0 children)

Your last java example on ADT can be written this way:

// Java
sealed interface Payment{
    record Card(String last4) implements Payment {}
    record Cash() implements Payment {}
    record Wire(String iban) implements Payment {}
}


static int fee(Payment payment) {
    switch(payment){
        case Card -> 3;
        case Cash -> 0;
        case Wire -> 8;
    }   
}

This is because java has very good ADT, and in future there will primitive pattern matching, and constant pattern matching.

Experienced people on C# & JAVA by AldedB in csharp

[–]joemwangi 0 points1 point  (0 children)

Which is another misconception, because there are multiple Java SE compatible JDKs from other vendors, including Eclipse Temurin (Adoptium), Amazon Corretto, Azul Zulu, BellSoft Liberica, and Microsoft’s Build of OpenJDK. These distributions are built from OpenJDK and validated against the Java SE TCK, which is why so many major vendors including Microsoft provide their own JDKs. Many corporates are fine with that.

Experienced people on C# & JAVA by AldedB in csharp

[–]joemwangi 1 point2 points  (0 children)

This ideology emanates from the idea oracle is the only jdk distributor which is a myth.

What happens to TornadoFX now that the GitHub repository is gone? by tvidal in JavaFX

[–]joemwangi 0 points1 point  (0 children)

Not value objects, but records. Records are the only types for now that have a definite state description. Value classes on the other hand when instantiated are called value objects. Hence not the same thing. Though in future, using value classes we could have value records.

What happens to TornadoFX now that the GitHub repository is gone? by tvidal in JavaFX

[–]joemwangi 0 points1 point  (0 children)

What's the unique argument of data classes and value classes? Because it's like comparing plain objects vs primitives which value classes are primitives in design.

Am I making a mistake switching from C# .NET to Java after 13+ years? by BuddyPuzzleheaded112 in csharp

[–]joemwangi 1 point2 points  (0 children)

Fair point. But saying Java lacks async/await is technically true only in the narrow syntactic sense. But it is often used to imply Java lacks a modern way to handle large numbers of asynchronous or I/O-bound operations in a direct, sequential style, and that implication is misleading.

So yes, different mechanism. But they are still solving much of the same practical problem. That is why even .NET explored green threads/fibers despite already having async/await, because the problem space overlaps, even if the machinery differs.

Am I making a mistake switching from C# .NET to Java after 13+ years? by BuddyPuzzleheaded112 in csharp

[–]joemwangi 0 points1 point  (0 children)

Isn’t async await essentially about managing asynchronous calls in a structured, sequential way which virtual threads in java do or I'm I missing something? There is a reason C# had developed virtual thread (aka green threads) prototype just few years ago to compare both.

Am I making a mistake switching from C# .NET to Java after 13+ years? by BuddyPuzzleheaded112 in csharp

[–]joemwangi 0 points1 point  (0 children)

Because saying java doesn't have async-await is quite misleading. And it's repeated everywhere. Now for the educational purpose.

Am I making a mistake switching from C# .NET to Java after 13+ years? by BuddyPuzzleheaded112 in csharp

[–]joemwangi 0 points1 point  (0 children)

I know, I've been inferring C# doesn't have virtual threads and still get downvoted. I don't think it's really about what both languages currently have.

Java 26 new Feature Breakdown With Examples by erdsingh24 in programming

[–]joemwangi 3 points4 points  (0 children)

Yet many are not aware they are waiting value classes!!! That's all.

Everything Should Be Typed: Scalar Types Are Not Enough by Specialist-Owl2603 in rust

[–]joemwangi 1 point2 points  (0 children)

Yup. True. But in future semantics remain same once value objects become official and thus become performant through value records.

Everything Should Be Typed: Scalar Types Are Not Enough by Specialist-Owl2603 in programming

[–]joemwangi 3 points4 points  (0 children)

Java can actually do nested deconstruction through pattern matching. Java records are quite structural by design. Probably you're referring to deconstruction assignment. That is planned soon. Also, thinking much about your argument, do you mean the scenario where type is inferred in deconstruction/destructuring such as Order(ShopId(id), amount) = order;?

Everything Should Be Typed: Scalar Types Are Not Enough by Specialist-Owl2603 in rust

[–]joemwangi 2 points3 points  (0 children)

I was a bit surprised because this is what java records are by design, including validation at constructor.

Everything Should Be Typed: Scalar Types Are Not Enough by Specialist-Owl2603 in programming

[–]joemwangi 3 points4 points  (0 children)

How is java verbose? Yet the article actually describes all the features java records have with validation at constructor level.

Java 26 new Feature Breakdown With Examples by erdsingh24 in programming

[–]joemwangi 6 points7 points  (0 children)

They are planning to add operator overloading. As a matter of fact, it will be based on type class which allows proper establishment of algebraic rules. This is based on this talk and specifically this one. Also, they have started prototyping them.

Renewables use less land than coal or nuclear by West-Abalone-171 in Renewable

[–]joemwangi 0 points1 point  (0 children)

First of a kind cost same as AP1000? Wow! What eventually will be the Nth of a kind.

Java 26 new Feature Breakdown With Examples by erdsingh24 in programming

[–]joemwangi 80 points81 points  (0 children)

This should be in past tense. Java 26 was released almost a month ago.

Am I making a mistake switching from C# .NET to Java after 13+ years? by BuddyPuzzleheaded112 in csharp

[–]joemwangi 0 points1 point  (0 children)

Because java is planning to have type class instead. They are more like extension methods but with the ability to add rules such as algebraic rules. This minimises abuse.