News for hackers. Stuff that matters.

valcron1000

Re:A Design Space Exploration of Async/Await on Saturday September 12, 2026 @01:36PM (#49674874)
Was part of the initial design, but then the designers dropped the idea of a built-in runtime.
Re:A Design Space Exploration of Async/Await on Saturday September 12, 2026 @09:30AM (#49672137)
If you want to have annotations on IO code you could get it using attributes - and you could even go further by using more precise annotations like `network`, `disk`, etc. The problem with using the type system is that now you need to account for the distinction everywhere (ex. interfaces/traits must support IO-based implementations) only to carry this metadata which should not affect the behavior. In Haskell, IO exists not to track a behavior but to enforce it in a lazy language. In Rust is done due to the lack of a runtime.

I recommend reading https://degoes.net/articles/no-effect-tracking . In summary, most languages could do with the Go/Java virtual thread async model dropping async/await entirely.

22 years late, but better late than never.
Re:Mitchellh starts a new company: Superlogical on Thursday July 30, 2026 @12:21AM (#49106095)
Care to share your setup? I'm currently working on pretty much the same thing and it's looking good so far, but having a single user makes it hard to get enough feedback.
Re:Our position on open-weights models on Monday July 27, 2026 @08:11PM (#49077495)
> what should be done about open weight bioweapon and cyber-offense capabilities? Is it simply the cost of freedom that we should allow attackers to access these tools?

Yes, in the same way that we have E2E encryption which allows bad actors to distribute content beyond human horrors.

Re:Scarf has moved away from Haskell on Saturday July 11, 2026 @02:44PM (#48874559)
Had no nuke the `target` folder a couple of weeks ago, +400 GB ...
Re:Crypto in 2026: Oh, This Is the Bad Place on Tuesday June 23, 2026 @11:18AM (#48646431)
This guy has been preaching against crypto for years, to the point of leaving the Haskell ecosystem just because the language was being used by Cardano. At some point you have to wonder what's going on with him...
Re:Ferrari Luce – Designed with Jony Ive on Tuesday May 26, 2026 @12:36AM (#48275045)
Damn, that looks awful.
Re:Learnings from 100K lines of Rust with AI (2025) on Wednesday May 20, 2026 @10:02AM (#48207974)
Where can we read the code?
> if it’s a solo greenfield project

That's a big if. I don't have numbers but most professional engineers are not working on such projects

Re:Show HN: The Mog Programming Language on Monday March 09, 2026 @07:00PM (#47316943)
I've been thinking of doing the exact same thing. Preserve context as images and die. Expose a single tool called "eval". You could have a extremely tight editor integration using something like SLIME.
Re:Qwen3-Coder-Next on Tuesday February 03, 2026 @12:22PM (#46873920)
Still nothing to compete with GPT-OSS-20B for local image with 16 VRAM.
> When something breaks, I SSH in, ask the agent what is wrong, and fix it.

> I am spending time using software, learning

What are you actually learning?

PSA: OP is a CEO of an AI company

Re:Venezuela's capital hit by explosions, smoke seen on Saturday January 03, 2026 @04:08PM (#46481574)
If international law had any effect people would believe in it. You're mixing cause/effect. This situation has been going on for years and the lack of response by international organizations makes people lose all confidence in them.
Re:Ultrasound Cancer Treatment: Sound Waves Fight Tumors on Monday December 22, 2025 @11:22PM (#46362395)
I'm unfortunately on the same situation. We made a consultation with people from Baptist Health Miami and it seems like there are several non trivial requirements for such treatment (histotripsy), like the number and location of mets. Hope that this improves in the mear future.
Re:Rust's Block Pattern on Friday December 19, 2025 @07:47PM (#46332720)
One of the first things I tried in Rust a couple of years ago coming from Haskell. Unfortunately it's still not stabilized :(
Re:Several core problems with Rust on Sunday November 23, 2025 @05:56PM (#46028196)
> Memory safety is not that sacred. In fact, for many applications malfunctioning is better than crashing

Yeah, just another data leak, no biggie.

Re:IDEmacs: A Visual Studio Code clone for Emacs on Sunday November 16, 2025 @04:08AM (#45943723)
Not at the same level. TRAMP is way behind feature-wise.
Re:Zig (and the Design Choices Within) on Monday November 10, 2025 @03:25PM (#45880492)
> Zig must also be good for eliminating the same ones.

But Zig does not eliminate them, but rather it might catch them at runtime. The difference here is that Rust promises that it will detect them at compile time, long before I ship my code.

> The property of memory safety is itself not binary in both languages

In this case it is: either you catch the issue at compile time, or you don't. This is the same as type safety: just because Python can detect type errors at runtime it does not mean that it's as "type safe" as, for ex. Haskell. This might be due to imprecise usage of terms but that's just the way it's discussed in the craft.

Re:Hypothesis: Property-Based Testing for Python on Wednesday November 05, 2025 @04:16PM (#45828131)
Yes, but instances require the user to provide shrinking while Hypothesis does not: shrinking is derived automatically.
Re:A Few Words About Async on Tuesday November 04, 2025 @09:52PM (#45818439)
In the sense that you only need to work with the standard IO monad to get the benefits of the runtime.
Re:A Few Words About Async on Sunday November 02, 2025 @11:34AM (#45791491)
You don't need "monads" (in plural) since GHC provides a runtime where threads are not 1:1 OS threads but rather are managed at the user level, similar to what you have in Go. You can implement async/await as a library though [1]

[1] https://www.cambridge.org/core/services/aop-cambridge-core/c...

Re:A Few Words About Async on Sunday November 02, 2025 @02:17AM (#45788445)
> async/await is also available in a bunch of other languages, including F#, C#8, Haskell[...]

Haskell (GHC) does not provide async/await but uses a green thread model.

Re:Async/Await is finally back in Zig on Saturday November 01, 2025 @12:18PM (#45782877)
> Knowing if a function will yield the thread is actually extremely relevant knowledge you want available.

When is this relevant beyond pleasing the compiler/runtime? I work in C# and JS and I could not care less. Give me proper green threads and don't bother with async.

Re:John Carmack on Mutable Variables on Friday October 31, 2025 @02:11PM (#45774944)
> I mean, Haskell has like what, 2, 3, 4? Major build systems and package repositories? It's a quagmire.

Don't know when was the last time you've used Haskell, but the ecosystem is mainly focused on Cabal as the build tool and Hackage as the official package repository. If you've used Rust:

- rustup -> ghcup - cargo -> cabal - crates.io -> hackage - rustc -> ghc

Re:We Programmers Need "Results" on Friday October 31, 2025 @01:16PM (#45774374)

    } catch (exception: Exception) {
      // log exception
      throw exception
    }
Probably the most harmful snippet ever written. Every blog post about errors has something similar written, regardless of the programming language. Please, don't write, suggest or even pretend that this should exist.
Re:Type Checking Is a Symptom, Not a Solution on Friday September 05, 2025 @04:07PM (#45143029)
> that data flowing between them consists of simple, agreed-upon formats

> HTTP servers and clients, email systems, DNS resolvers—they all interoperate based on simple protocols

Yeah, massive disagree with this. There is absolutely nothing "simple" about these protocols. Try to compose 3/4 UNIX programs together and you necessarily need to run it to see if it even makes sense. Don't get me started on HTTP.

It boils my blood to read "simple" in the context of software engineering

Re:Uncertain<T> on Thursday August 28, 2025 @03:57PM (#45056360)
Re:Left to Right Programming on Monday August 18, 2025 @11:27PM (#44947985)
No need to import a third party library: you can use `Data.Function ((&))` for this:

    arg
     & f1
     & f2
     & f3
Re:Customizing tmux and making it less dreadful on Monday August 04, 2025 @03:20PM (#44790274)
How do you deal with persistent sessions in VSCode? I have a remote VM to which I connect through SSH using VSCode, but I need to have certain programs running even after I disconnect from the VM. It's the only reason why I use tmux and I haven't been able to get rid of it.

Older »