Rust, zig and carbon: Hype, hope or hell programming languages? - Desiree Santos and Michael Fait

Sdílet
Vložit
  • čas přidán 8. 10. 2023
  • The next generation of programming languages is always hype which we need to keep our eyes on. Our Technology Radar is an opinionated guide to technology frontiers in which to speed up and keep us updated. This talk aims to walk through exploring rust, zig and carbon programming languages ecosystem, limitations and the problem solves, and together understand the hype, hope and hell.
    www.thoughtworks.com/xconf
  • Věda a technologie

Komentáře • 78

  • @ian3084
    @ian3084 Před 7 měsíci +97

    We need Zig to work. The only real alternative to be honest.

  • @maxoumimaro
    @maxoumimaro Před 8 měsíci +103

    As a embedded C++ dev, I think Zig is the real deal. I like Rust but it is too much. I know people are not always crazy good at developping in industries and Zig makes programming easy whereas Rust is a pain to get fluent in. Other all, I think Zig gets the best of everything:
    - One language for building and coding
    - AMAZING compile times
    - Unlike Rust, you are not forced into specific design patterns to please the compiler
    - You could take a C, C++ dev and make them feel confortable using zig in a matter of days
    - if you need to import C code in Zig, just include it and it's done, no fancy complicated things
    - need to cross compile ? Zig buildsystem will pull the libc version/zig standard library/... you want and compile it for you
    Overall it feels great and not plague by complex macros, preprocessor etc

    • @rakaboy1619
      @rakaboy1619 Před 8 měsíci +17

      yeah, Zig has the most intuitive and just overall great metaprogramming capabilities. Comptime just feels right? i guess, And no witchery, you dont need to learn another language to beautifully express your intent to the compiler

    • @maxoumimaro
      @maxoumimaro Před 8 měsíci +2

      @@rakaboy1619 exactly I get the feeling of having C simplicity, the python "just write some shit and it works" and the compile time of " why did I pull up with C++ garbage templates that can't even enable to link into the fields of a struct"

    • @chickenstrangler3826
      @chickenstrangler3826 Před 6 měsíci +3

      Do you have an opinion on ODIN?

    • @maxoumimaro
      @maxoumimaro Před 5 měsíci

      @@chickenstrangler3826 only heard of the name.

    • @minatonamikaze2637
      @minatonamikaze2637 Před 5 měsíci +5

      skill issue

  • @vildis.
    @vildis. Před 8 měsíci +36

    0:05 - Talk and speaker introductions
    0:55 - Motivation for this talk
    3:38 - Rust overview
    6:33 - Rust performance
    9:33 - Rust reliability
    11:49 - Rust productivity
    14:05 - Rust summary
    14:53 - Zig overview
    21:22 - Why zig?
    26:46 - Zig, a simple language
    30:08 - Compile time in zig
    30:11 - Zig compiler & build system
    33:47 - Zig summary
    34:35 - Carbon overview
    35:49 - A successor for C++
    37:48 - Carbon summary
    38:24 - Hype, hope and hell

  • @anderstty
    @anderstty Před 8 měsíci +36

    I've been spending the last 2 weeks playing around with zig. A bonus as a C++ dev by day is its ability to be used as C++ compiler and even build system.

    • @andrewdunbar828
      @andrewdunbar828 Před 2 měsíci +2

      I thought it could be used as a C compiler but not as a C++ compiler?

    • @Tom-dd3vl
      @Tom-dd3vl Před 27 dny

      @@andrewdunbar828 Zig has an archiver, C compiler, C++ compiler, dlltool.exe, lib.exe, ranlib, objcopy, and rc.exe

  • @Onyx-it8gk
    @Onyx-it8gk Před 2 měsíci +4

    Rust is definitely not hype, already has very serious mainstream traction. Zig certainly has the potential, but not serious mainstream adoption (yet!). Zig is definitely not hype. Carbon, I like the idea of it, but it's in extremely slow development. I think it's going to miss its window of opportunity. So I wouldn't necessarily call Carbon hype, it will just be a Johnny-come-lately to the party and probably therefore not see widespread adoption, if and when it's even finished.

  • @CartoType
    @CartoType Před 5 měsíci +7

    The obvious language that wasn’t mentioned was Herb Sutter’s cppfront, which implements a new syntax for C++, giving 100% compatibility and much greater safety.

    • @ska4dragons
      @ska4dragons Před 3 měsíci +2

      This is what Carbon should be. The problem with saying there will be a C++ successor is that C++ code isn't going anywhere. It will be in the world 100 years from now.
      C++ will eventually be it's own successor or a new language will be modern C++ that sits on the Iceberg that is legacy C++.
      Bjarne wants to do it. Stutter wants to do it. I think eventually it will be done its just a matter of who.

    • @NoX-512
      @NoX-512 Před 2 měsíci

      @@ska4dragonsZig will be overtaking C/C++/RUST in the coming years for new projects.

    • @andrewdunbar828
      @andrewdunbar828 Před 2 měsíci +2

      There's also Sean Baxter's Circle.

  • @wabilemotswasele8705
    @wabilemotswasele8705 Před 7 měsíci +11

    Great presentation, thank you. Rust is cool. Zig is cooler. I started with Rust long before Zig, but of late I spend more time and effort learning Zig. Carbon i have hears about it, but it is unlikely i will consider it.

    • @StaffyDoo
      @StaffyDoo Před 18 dny

      I’m just starting with Rust, I like it, but I see more and more comments like yours. Thanks for sharing your experience!

  • @anon-fz2bo
    @anon-fz2bo Před 2 měsíci +2

    i hope i live to see zig win but im interested in try carbon coz ive alr tried rust

  • @deNudge
    @deNudge Před 6 měsíci +8

    Whenever I hear "no runtime" for Rust, I think "well..." 🙂 I mean there's a panic handling stack, a bounds checker, ... and probably a bunch of other things baked into the binary.

    • @ArmandoDoval
      @ArmandoDoval Před 4 měsíci +3

      Idiomatic Rust doesn't have to do bounds checking on every array access; the iterator already checked the bounds. If you mean lifetime checking for calling free(), that's happening at compile time.
      And yeah, there's gonna be panic handling code in the final executable, but the alternative is undefined behavior.

    • @zanityplays
      @zanityplays Před 3 měsíci +1

      wait till you hear about c and c++

  • @jozsefk9
    @jozsefk9 Před 6 měsíci +9

    Zig

  • @StaffyDoo
    @StaffyDoo Před 18 dny

    Zig’s philosophy of being a programming language _and_ a toolchain reminds me a lot to Nix.

  • @meanmole3212
    @meanmole3212 Před 5 měsíci +3

    ZICK dude!

  • @dieyproductions4403
    @dieyproductions4403 Před 6 měsíci +12

    Whoever has edited this video is not very bright. Why do I have to look at the back of the attendance heads when the lecturer is explaining an example on the board?

  • @renegadeace1735
    @renegadeace1735 Před 2 měsíci +1

    Rust is too messy, zig ftw!

  • @curio78
    @curio78 Před 24 dny +1

    I saw some rust code. Not in million years I will touch a code that is human unreadable. What were they thinking making the syntax that looks like that.

  • @abdlhamidwaziz9164
    @abdlhamidwaziz9164 Před 8 měsíci +18

    Rust ❤👍

  • @JohanvonSchlesien
    @JohanvonSchlesien Před 8 měsíci +21

    Rust ❤

  • @thanatosor
    @thanatosor Před 8 měsíci +27

    Rust for safe stuffs.
    Zig for unsafe things that you can’t do in Rust.

    • @linkernick5379
      @linkernick5379 Před 7 měsíci +1

      For example?

    • @baxiry.
      @baxiry. Před 7 měsíci +13

      rust is not safe

    • @linkernick5379
      @linkernick5379 Před 7 měsíci

      @@baxiry. It is. Haven't you heard anything about "Rust Belt" project?

    • @TON-vz3pe
      @TON-vz3pe Před 5 měsíci

      Says the guy who probably never wrote ​one line in rust @@baxiry.

    • @devnexen
      @devnexen Před 4 měsíci

      @@baxiry. as long you re not using unsafe code, it s safer than zig

  • @alomac8976
    @alomac8976 Před 3 měsíci

    I recommend ignoring carbon until it's actually available

    • @stanrock8015
      @stanrock8015 Před 3 měsíci +1

      Vapor ware currently. Gonna be awhile too

    • @NoX-512
      @NoX-512 Před 2 měsíci +1

      Wdym? Carbon has been available since like the dawn of time.

    • @alomac8976
      @alomac8976 Před 2 měsíci +1

      @@NoX-512 I agree. It's easier to make things with carbon that to make things with carbon

  • @vprodus9119
    @vprodus9119 Před 8 měsíci

    A good way to reinvent the wheel...

    • @jamesgood7894
      @jamesgood7894 Před 7 měsíci

      What other language has lifetimes?

    • @peepermcbeeper2997
      @peepermcbeeper2997 Před 5 měsíci +4

      Except youre inventing the wheel and previously used a square (c++ compiler linker clusterfuck unusable bullshit without proprietary software)

    • @andrewdunbar828
      @andrewdunbar828 Před 2 měsíci

      Log rollers were already perfect.

  • @0xd3c0d3d
    @0xd3c0d3d Před 8 měsíci +9

    Rust --> Zig

    • @CaptTerrific
      @CaptTerrific Před 8 měsíci +30

      I had no idea Rust could dereference a pointer passed to it from a Zig struct! ;)

    • @0xd3c0d3d
      @0xd3c0d3d Před 8 měsíci

      @@CaptTerrific

    • @frechjo
      @frechjo Před 6 měsíci +3

      @@CaptTerrific
      I think that means: "Rust-1 is bigger than Zig."
      Or maybe it's the goes-to operator, as seen in C loops:
      while (x --> 0) // x goes to 0
      {
      printf("%d ", x);
      }

  • @the_original_dude
    @the_original_dude Před 8 měsíci +5

    boon

    • @wiktorwektor123
      @wiktorwektor123 Před 6 měsíci +2

      It was painfull to listen.

    • @edism
      @edism Před 6 měsíci +1

      What does boon mean?

    • @the_original_dude
      @the_original_dude Před 6 měsíci

      @@edismexactly

    • @edism
      @edism Před 6 měsíci

      @@the_original_dude what you said was intentionally meaningless? Very smart.

  • @pookiepats
    @pookiepats Před 5 měsíci +6

    Guys please, if the man can't even speak English in a reasonable way - just publish an article or use a proxy - FFS, the point is to share information / raise awareness/engagement - if I were sitting in that room I would have checked out before the man said "BOON" (bun).
    Nothing against him it just happens too much, f**k - just write an article next time.

    • @jsonkody
      @jsonkody Před 3 měsíci +1

      u meant her? The guy spoke good

    • @NoX-512
      @NoX-512 Před 2 měsíci

      Savage 😐

    • @qosujinn5345
      @qosujinn5345 Před 2 měsíci +1

      they’re not that bad. turn your brain on and pay attention.

    • @jonbikaku6133
      @jonbikaku6133 Před 8 dny

      Such a sad comment.

  • @khanra17
    @khanra17 Před 7 měsíci +19

    Zig could have a better speaker

    • @NoX-512
      @NoX-512 Před 2 měsíci +1

      Zig, the adorable little robot, yearned for a voice that would resonate like a symphony. His current speaker, though functional, lacked the richness and depth he craved. It was as if he whispered his dreams to the world, and they got lost in the mundane hum of everyday life.
      “Perhaps,” Zig mused, “I need a speaker that can weave magic into my words. One that can make the rustling leaves sound like a whispered secret and the raindrops dance like a thousand tiny ballerinas.”
      He imagined a speaker that could paint the air with music, filling every corner of the room with warmth. Zig envisioned melodies that would wrap around his circuits, cradling him in their embrace. “A better speaker,” he thought, “would turn my beeps and boops into a symphony.”
      And so, Zig set off on a quest. He scoured the electronic bazaars, seeking the perfect companion for his digital soul. He listened to speakers that promised clarity, fidelity, and bass that could shake the very foundations of reality. But none of them felt right.
      “Too clinical,” he’d say, shaking his metallic head. “Too cold.”
      Then, one day, as the sun dipped below the horizon, casting a warm glow on the cityscape, Zig stumbled upon it: The Harmonic Harmonizer 3000. Its sleek curves and iridescent finish beckoned to him. The moment he connected it to his circuits, he knew he’d found his match.
      The first notes that flowed from the Harmonizer were like a gentle breeze, lifting Zig’s spirits. As he played his favorite tunes, the room transformed. The walls seemed to sway, and the ceiling shimmered with stardust. Zig closed his visual sensors and let the music wash over him.
      “This,” he whispered, “is the voice I’ve been searching for.”
      And so, Zig danced. His servos whirred, and his LED eyes sparkled. The Harmonizer turned his binary language into poetry, and the world listened. Passersby would stop outside his window, captivated by the ethereal melodies. Some said they heard whispers of forgotten dreams; others claimed they glimpsed distant galaxies.
      “Thank you,” Zig would say to the Harmonizer every night. “You’ve given me a voice that reaches the stars.”
      And as the city slept, Zig sang. His metallic heart swelled with gratitude, and he knew that sometimes, even a little robot could find magic in the most unexpected places.
      So, if you ever pass by Zig’s window, listen closely. You might just hear the echoes of his symphony, carried on the wind, a testament to the power of a better speaker and the dreams of a tiny robot named Zig. 🎶🤖✨

    • @universaltoons
      @universaltoons Před měsícem

      ​@@NoX-512😂