I have been reading about this new language for a while. It’s a C competitor, very slim language with very interesting choices, like supporting cross platform compilation out of the box, supports compiling C/C++ code (and can be used as a drop in replacement for C) to the point in can be used as replacement of ©make and executables are very small.

But, like all languages, adoption is what makes the difference. And we don’t know how it goes.

Is anyone actually using Zig right now? Any thoughts?

  • jeffhykin@lemm.ee
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    3 years ago

    The killer feature (IMO) is automatic conversion of C code to Zig code (transpiling). E.g. take a C project, convert it all to Zig, and even if you don’t transpile, you still get really nice compat (include C headers just like a normal input without converting). Getting a medium sized C project converted to Zig in 1 day or 1 week, then incrementally improving from there, is really enticing IMO especially considering the alternative of rewriting in Rust could be months of very hard conversion work. Transpiling isn’t perfect but it seems to be a 97% soltuion.

    The second advantage seems to be easy unsafe work.

    BTW I don’t really use Zig, and I still prefer Rust, but those are the reasons I think it has a niche of its own.

    • CameronDev@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      3 years ago

      I wonder if owners of large C projects are that keen to move off C to zip though? I guess time will tell. I do a fair bit of C, and I can’t see us risking switching to Zig, unless there was something else that made it really worth it. I should probably have a look at Zig if I have spare time, maybe there is a killer feature we aren’t seeing yet.

      Easy interop with legacy code is how kotlin took off, so maybe it will work out?

      • Blackthorn@programming.devOP
        link
        fedilink
        arrow-up
        1
        ·
        3 years ago

        My understanding is that this is possible: you should be able to take a C project, add a build.zig file and under the hood the system is calling clang to compile the C project. HOWEVER, you can now add a .zig source file, compile that in zig and link together with the output of the C compiler into an executable. If this is actually true, I can definitely see the attractiveness of the language.