Functional Programmers need to take a look at Zig

(pure-systems.org)

23 points | by xngbuilds an hour ago ago

3 comments

  • jstanley a minute ago

    > Noise is anything that must be written for the program to function that is not relevant to the domain.

    > ...

    > What facilities does the language provide me to create correct-by-construction systems and how easily can I program the type-system.

    Isn't programming the type-system orthogonal to the program's domain in the same way that manual memory management is?

  • dnautics 19 minutes ago

    io is not a monad. theres nothing stopping you from stashing a global io "object" and just passing the global wherever you interface with the stdlib.

    It's dependency injection. and yes, you can model dependecies like a monad but most people, even in less pure fp langs, don't.

    i don't really say this to just be a pedant, but if you're an fp enjoyer, you will be disappointed if you get the picture that zig is fp-like, outside of a few squint-and-it-looks-like things

    • tux1968 6 minutes ago

      My reading of the article, was that the author seems to be in search of a new paradigm, that moves beyond what he sees as the limitations of "fp-like" languages as they exist today. His point appears to be that Zig provides the benefits of "fp-like" languages that exist today, while avoiding at least some of the downsides.

      And he does admit you may have to squint, to appreciate the fp capabilities provided by Zig.