Zig Programming Language

  Рет қаралды 52,677

Gamefromscratch

Gamefromscratch

3 жыл бұрын

The Zig programming is an interesting "new" programming language for low level or systems level programming. In many ways you can think of it as a better C, with very good interop, as well as modern language features.
Links:
gamefromscratch.com/the-zig-p...
Programming Language Playlist
• Programming Languages
-----------------------------------------------------------------------------------------------------------
Support : / gamefromscratch
GameDev News : gamefromscratch.com
GameDev Tutorials : devga.me
Discord : / discord
Twitter : / gamefromscratch
-----------------------------------------------------------------------------------------------------------

Пікірлер: 285
@gamefromscratch
@gamefromscratch 3 жыл бұрын
Links: gamefromscratch.com/the-zig-programming-language/ Programming Language Playlist kzbin.info/aero/PLS9MbmO_ssyCzjONn8v796nUGRXMX389H ----------------------------------------------------------------------------------------------------------- *Support* : www.patreon.com/gamefromscratch *GameDev News* : gamefromscratch.com *GameDev Tutorials* : devga.me *Discord* : discord.com/invite/R7tUVbD *Twitter* : twitter.com/gamefromscratch -----------------------------------------------------------------------------------------------------------
@ZigSHOWTIME
@ZigSHOWTIME 3 жыл бұрын
FOR GREAT JUSTICE! ⚡
@hugoqueva
@hugoqueva 2 жыл бұрын
Just watched the video and already fell in love with this language
@AbhinavKulshreshtha
@AbhinavKulshreshtha 3 жыл бұрын
Finally zig getting attention it deserves. It's a good programming language. Last time I used it, it was 0.5.x .
@tomhaswell6283
@tomhaswell6283 2 жыл бұрын
It's the next evolutionary step of C/C++ IMO
@rei2502
@rei2502 2 жыл бұрын
@@tomhaswell6283 what about Rust?
@caasieu
@caasieu 8 ай бұрын
@@rei2502 people just say stupid stuff like that when there’s hype. C++ isn’t going anywhere, Rust aint going anywhere zig will meep finding it’s place in the industry but will not replace anything per say
@ThePC007
@ThePC007 3 жыл бұрын
6:00 Afaik, a compiler that can re-compile code in under 1 ms is in the works. The way it works is you keep it running in the background while you code and it only re-compiles the code that you change, which is great for rapid development.
@ruffianeo3418
@ruffianeo3418 3 жыл бұрын
... and after 20 further years of evolution, it will have 80% of what Common Lisp had since 30 years :)
@32gigs96
@32gigs96 3 жыл бұрын
@@ruffianeo3418 unlike lisp it will be readable with STATIC types
@andrewferguson6901
@andrewferguson6901 2 жыл бұрын
@@32gigs96 unlike lisp it will be readable
@mrlightningbolt1302
@mrlightningbolt1302 Жыл бұрын
@@andrewferguson6901 Unlike lisp
@casualoutlaw540
@casualoutlaw540 Жыл бұрын
@@32gigs96 You should try Clojure, it's quite readable if you use a proper editor.
@Demagogify
@Demagogify 3 жыл бұрын
You missed great compile-time programming, which makes generic possible and easy code-gen. Built-in support for async. Custom allocators everywhere, with several accessible from the standard library and few more. Zig is C with less footguns.
@MR3DDev
@MR3DDev 3 жыл бұрын
Next Video: Zag Programming Language A good companion to Zig.
@nialltracey2599
@nialltracey2599 3 жыл бұрын
Zag would have to be the IDE, surely...?
@MR3DDev
@MR3DDev 3 жыл бұрын
@@nialltracey2599 sorry I only make funny comments but I have no idea about programming xD
@puffleperson
@puffleperson 3 жыл бұрын
That's actually the name of the upcoming self hosted compiler
@DavidEvans_dle
@DavidEvans_dle 3 жыл бұрын
I thought Zag was Zig with classes, for OOP?
@puffleperson
@puffleperson 3 жыл бұрын
@@DavidEvans_dle Never heard of that project. I know they considered adding them to zig for w ahile though.
@technologicalwaste7612
@technologicalwaste7612 3 жыл бұрын
The syntax is common to most 'new' languages. What I have observed from commenters is that programmers experienced with Rust and Go are very easily able learn and use Zig, whereas programmers coming from only C and C++ struggle a bit more.
@jsonkody
@jsonkody 2 жыл бұрын
also JS ... undefined xD
@eduardabramovich1216
@eduardabramovich1216 2 жыл бұрын
Hi man, thanks for this videos, in this case, now that you have checked Odin and Zig, which one do you prefer or consider more appropriate to write, let's say, a new Unreal Engine from scratch?
@idhank_5450
@idhank_5450 3 жыл бұрын
You missed a few lines on it's first-class cross compilation support Awesome video anyways, as always
@DylanMatthewTurner
@DylanMatthewTurner 3 жыл бұрын
I was thinking just yesterday about what languages are made specifically for games! I couldn't think of very many lol. I only knew of GDScript and GML, but even those are arguably just versions of Python and Delphi, respectively, even if I think they've been modified enough to count.
@SylvanFeanturi
@SylvanFeanturi 3 жыл бұрын
Most languages specific for gamedev are scripting languages attached to a particular game engine, like GDScript or UnrealScript (Unreal Engine 3/UDK). I'm sure there's plenty of 3rd party scripting languages (like Angelscript or SkookumScript for Unreal Engine 4) or even more general languages (e.x. BeefLang). As for real general-purpose programming languages with gamedev as their foundation - the only one that comes to mind is Haxe. I'm sure there are more - there are always more programming languages ;)
@Nandu2794
@Nandu2794 3 жыл бұрын
m.kzbin.info/www/bejne/inmch3aEa7qer7M Jai is exactly what you're looking for (in closed beta rn)
@Wix92
@Wix92 3 жыл бұрын
Nim started out as a language for game development, but it evolved into a general purpose language eventually.
@lukewilson199
@lukewilson199 3 жыл бұрын
You've also got Jai, but that isn't released, and honestly, Zig will probably be better than it anyways.
@radioleta
@radioleta 3 жыл бұрын
There is one called beef
@lorensims4846
@lorensims4846 3 жыл бұрын
Whee! I've heard about Zig but never knew much about it. Thanks for all the links. I've always been all about C. My main question has always been 'why zig?' but you've answered that pretty well. I never have and never will use Windows, but I''ll check it out.
@markelishaev617
@markelishaev617 3 жыл бұрын
Thanks for the video and the great content! Did you look into dart programming language?
@gamefromscratch
@gamefromscratch 3 жыл бұрын
Just in so much as in the Flutter 2 video. Outside Flutter, Dart is pretty much not used.
@websterek
@websterek 3 жыл бұрын
Please add direct links to video topic sites in description, it will be much more convenient
@HE360
@HE360 3 жыл бұрын
Zig, because programming languages are all you need!
@lukewilson199
@lukewilson199 3 жыл бұрын
Awesome video! Zig is a super new but very promising language, and the creator is a good man with good intentions.
@charlesselrachski34
@charlesselrachski34 3 жыл бұрын
Its actually a language name that you can google, not like python,rust and other bad name choices.
@ekremdincel1505
@ekremdincel1505 3 жыл бұрын
You can very much google Rust and Python.
@charlesselrachski34
@charlesselrachski34 3 жыл бұрын
@@ekremdincel1505 its almost as easy as if they actually tried to make an easy to search language name like r11ust or py1thon or lets make a new language and call it "the" . the "the" language great for gogole search
@ekremdincel1505
@ekremdincel1505 3 жыл бұрын
@@charlesselrachski34 I didn't really understant what you are trying to say.
@_slier
@_slier 3 жыл бұрын
u forgot to list stupid golang.. totally ungoogleable.. utterly trash like the language itself
@FlanPoirot
@FlanPoirot Жыл бұрын
@@charlesselrachski34 just append lang to it and you're good to go, C is much worse cause it will often just give u C++ results lol
@bobriemersma
@bobriemersma 3 жыл бұрын
"All your base" as they say.
@youreperfectstudio4789
@youreperfectstudio4789 3 жыл бұрын
Maybe you covered this and I missed it - many C libraries rely on macros but if zig doesn’t support macros I wonder how that works...
@doublex85
@doublex85 3 жыл бұрын
The Zig programming language doesn't need macros, but Zig is not C. Zig supports C libraries by also being a distribution of the clang C and C++ compiler. Zig is a really interesting clang distribution because it brings its own mechanism for build artifact caching, headers for several libc's, and first-class support for cross compilation.
@TheGeemili
@TheGeemili 3 жыл бұрын
While zig doesn't support macros, it does have a feature called comptime that shows you too run code at compile time. A lot of macros can be translated into comptime functions, meaning this isn't as much of an issue.
@etopowertwon
@etopowertwon 3 жыл бұрын
I always forget what is zig and what is nim.
@gamefromscratch
@gamefromscratch 3 жыл бұрын
Zig is no longer on my todo list, Nim is still on my todo list. ;)
@Wix92
@Wix92 3 жыл бұрын
Zig - C replacement; it tries to preserve the low-levelness and simplicity of C while fixing its shortcomings. Nim - Python, but performant; Nim tries to be elegant and to enhance developer productivity without sacrificing performance; compiles to C/C++/JS.
@skaruts
@skaruts 3 жыл бұрын
@Darren Munsell yea, it's inspired in python for the clean syntax, but in practice I find it more reminiscent of C than python.
@gustavojoaquin_arch
@gustavojoaquin_arch Жыл бұрын
​@@gamefromscratch🏳️‍🌈?
@johnhansen4794
@johnhansen4794 3 жыл бұрын
You upload, I click like, I may or may not comment. That Comment may or may not relate to content. You are welcome.
@hypurban
@hypurban 3 жыл бұрын
Take off every zig. Make your time.
@MaoDev
@MaoDev 3 жыл бұрын
You might want to take a look at Jai
@louisgjohnson
@louisgjohnson 3 жыл бұрын
Zig looks awesome, the only reason I ever want to use C is because the huge amount of libs and tools built for gamedev.
@AinurEru
@AinurEru 3 жыл бұрын
Given how brain-dead auto-magic the Zig/C interop is, that's not really a valid reason to stay in C :) (for the record, I still mostly use C, and haven't tried Zig yet - but have tried and loved Odin)
@ishdx9374
@ishdx9374 2 жыл бұрын
zig and c interop is really easy you can literally include c headers and use them
@arifkasim3241
@arifkasim3241 2 жыл бұрын
@@AinurEru if I were to attempt game programming with C (no OOPS), which C compiler and graphic/game library would you suggest I go for?
@drygordspellweaver8761
@drygordspellweaver8761 Жыл бұрын
know what else is interoperable with C, just as fast as C, and with all the low level features of C? C.
@happygofishing
@happygofishing Жыл бұрын
@@arifkasim3241 raylib
@tusharsr2709
@tusharsr2709 3 жыл бұрын
He just speaks so fast
@srglmr
@srglmr 7 ай бұрын
I had to check its not x1.5 speed
@CristianMolina
@CristianMolina 3 жыл бұрын
Zig deserves more attention. Thanks GFS!
@Dustballable
@Dustballable 3 жыл бұрын
Not for game dev it doesn't. Andrew's weird hatred for operator overloading of any kind makes it a huge pain to manipulate vectors and matrices.
@DavidMaclin351
@DavidMaclin351 3 жыл бұрын
Hey. Quixel Mixer 2021. Get on it 😜
@gamefromscratch
@gamefromscratch 3 жыл бұрын
Consider it on. gamefromscratch.com/quixel-mixer-2021-released/
@geomorillo
@geomorillo 3 жыл бұрын
zzzzzig? oh great yet another new language to learn
@AinurEru
@AinurEru 3 жыл бұрын
@Gamefromscratch It's high time you cover Odin: 1) In the spirit of Zig/Jai of being a replacement to C but with (non-OOP)high-level features (generics, etc.) 2) Ergonomic and simple to read and use (arguably more than Zig) 3) Windows-frieldly with full (auto-gen'ed)Win32 bindings (arguably friendlier to windows than Zig) 4) Ease of interoperability with C (not as auto-magic as Zig, but not far from it) 5) Many target platforms supported (including Apple M1 and WebAssembly) 6) RayLib 3 bindings (was right above Zig in this video and had it's logo showing in your recent 3.7 video) 7) VS Code extension: New one using an LSP server (standard language protocol that can be used in any IDE/Text-Editor supporting it). 8) Standard library (recently overhawled): OS/filesystem (cross-platform), compression (zip/gzip), image-files (PNG), etc. 9) LLVM back-end (recently became default) ...
@AinurEru
@AinurEru 3 жыл бұрын
@Darren Munsell Well, I didn't say it's for everyone (nothing is), just that he should cover it :)
@danieleccleston7928
@danieleccleston7928 2 жыл бұрын
I recently saw odin and I love it. I think its perfect for me.
@drygordspellweaver8761
@drygordspellweaver8761 Жыл бұрын
I am waiting for JAI but if Jblow goes the way of forcing explicit type declarations in function parameters I may get turned off from the verbosity
@Zekium
@Zekium 3 жыл бұрын
Move Zig... FOR GREAT JUSTICE !
@cdarklock
@cdarklock 3 жыл бұрын
YOU KNOW WHAT YOU DOING TAKE OFF EVERY ZIG
@Intelligenz_Bestie
@Intelligenz_Bestie 3 жыл бұрын
the only itch that a programming language could scratch for me rn would be something with the simplicity of python but the type-safety of rust, maybe something like coffeescript-but-for-rust that adds syntactic sugar on top and transpiles to it
@hammer86_
@hammer86_ 3 жыл бұрын
nim
@NeZversSounds
@NeZversSounds 3 жыл бұрын
I'm waiting when Jon Blow will open to the public his Jai language.
@vladimirkraus1438
@vladimirkraus1438 2 жыл бұрын
I do not believe it will ever happen.
@NeZversSounds
@NeZversSounds 2 жыл бұрын
@@vladimirkraus1438 It will and that's a fact.
@vladimirkraus1438
@vladimirkraus1438 2 жыл бұрын
@@NeZversSounds And next question is: will it better than Zig or Odin?
@NeZversSounds
@NeZversSounds 2 жыл бұрын
@@vladimirkraus1438 I believe it will be. Because It is made from the ground up (compiler included) to be as performant as possible and its intended use is game development. There are several videos of Jon Blow talking his language proposition and videos during development.
@vladimirkraus1438
@vladimirkraus1438 2 жыл бұрын
@@NeZversSounds I have seen all Jon's videos. I admit the language has some good esthetics in it, certainly overcomes some drawbacks of C/C++ and I believe that the compiler will be very fast. But Jai is not the only language which targets this niche. Zig and Odin are another examples which aim at the same target and are already public. Especially Odin was inspired by the Jon's ideas about the new language... Though they are not production ready, they make quite a good progress especially because other people are already using them and reporting bugs and ideas for improvements. This is in contrast to Jai, which is closed source so far... The future will show whether opensourcing language earlier is better than keeping it closed and mysterious for a long time.
@Stopinvadingmyhardware
@Stopinvadingmyhardware Жыл бұрын
For the Never Again crowd, you seem to be doing it again.
@iLikeCoffee777
@iLikeCoffee777 3 жыл бұрын
Out of curiosity, when you said raylib had bindings for almost every language, I decided to check and see if they had one for R... still no luck. Here I was hoping for a good way to turn that statistical beast into a good gaming language.
@navjotsingh2251
@navjotsingh2251 2 жыл бұрын
Why would you want R for a gaming language lol
@MTSP-pe2fn
@MTSP-pe2fn Жыл бұрын
R is a language for data analysts and researchers, the language is not designed for game development, raylib bindings are made for general purpose languages normally.
@paulcg7566
@paulcg7566 3 жыл бұрын
why learning this instead of c++?
@ezioauditore7636
@ezioauditore7636 3 жыл бұрын
Zig is trying to replace C, not C++. Basically, safer C. Rust is the one trying to replace C++.
@ekremdincel1505
@ekremdincel1505 3 жыл бұрын
Why learn C++ in the first place?
@Cons-Cat
@Cons-Cat 3 жыл бұрын
Maybe learn Zig if you don't want to hate life?
@Cons-Cat
@Cons-Cat 3 жыл бұрын
@@ezioauditore7636 Rust is mostly used in traditionally-C domains, so you're wrong. All those GNU coreutils being replaced with Rust. Drivers now too. A Glibc alternative. Etc.
@ezioauditore7636
@ezioauditore7636 3 жыл бұрын
@@Cons-Cat Any programming language can do that too, you know? C is simple, Rust is not, that's why Rust will never be a replacement for C. Also, the examples you gave are for Linux, and they absolutely refuse to use C++ for various reasons related to the design of the language.
@zednotdead
@zednotdead 2 жыл бұрын
Run Zig for great justice!
@jokinglimitreached1503
@jokinglimitreached1503 3 жыл бұрын
Linux kernel in Zig WHEN?
@SamualN
@SamualN 3 жыл бұрын
they just added rust, so adding zig isn't farfetched
@jokinglimitreached1503
@jokinglimitreached1503 3 жыл бұрын
Zig is a better C. So it's a question of when ⚡
@Hellohiq10
@Hellohiq10 Жыл бұрын
Fortunately and unfortunately, zig’s community isn’t nearly as toxic as rust’s, so people don’t get hyped over zig
@madmonkey360shadowgun6
@madmonkey360shadowgun6 3 жыл бұрын
Zig is better than Nim?
@_slier
@_slier 3 жыл бұрын
obviously.. nim is gced language that is no go for low level. plus nim is python like language, its like ur typical ex gf who is overly sensitive over white space
@Theraot
@Theraot 3 жыл бұрын
Yeah, but are there bindings for Godot?
@charliegnu
@charliegnu 3 жыл бұрын
If there's C bindings, you can use Zig.
@Theraot
@Theraot 3 жыл бұрын
@@charliegnu C++ Edit: Found a repo on github, 3 years old, under the name "godot-zig" by "outrera". Can't trust it.
@gamefromscratch
@gamefromscratch 3 жыл бұрын
github.com/JustinRyanH/godot-zig
@Theraot
@Theraot 3 жыл бұрын
@@gamefromscratch "Godot working with Zig. This is super WIP DO NOT USE"
@rasulseidagul
@rasulseidagul 3 жыл бұрын
You asked for bindings: here they are. You didn't ask specifically about production ready bindings. And even if you ask for it, you must rewatch video or visit zigland.org to notice that the language itself is not production ready.
@brendant.4493
@brendant.4493 3 жыл бұрын
Oh great. Another one.
@capitalismoburgues5549
@capitalismoburgues5549 3 жыл бұрын
Dude i read ZIP lmao
@Kaminiisama
@Kaminiisama 3 жыл бұрын
Its nice to see something new in the game maker community
@rdoetjes
@rdoetjes 3 жыл бұрын
The what programming language? Never heard of it!
@wahomemutahi1008
@wahomemutahi1008 3 жыл бұрын
9seconds ago😬
@kappilino
@kappilino 3 жыл бұрын
I think besides of Rust, one need a good JIT compiled scripting language. Not a another C competitor. If one needs C, one can use C or unsafe Rust. But for the higher gamescripting things, a language that interoperates with Rust on a higher level would be nice. Maybe a lua compiler written in Rust.
@SamualN
@SamualN 3 жыл бұрын
why do you you need specifically a JIT language?
@kappilino
@kappilino 3 жыл бұрын
I dont't want to compile the whole engine if I change only some gameplay logic. And I don't want stuck around whith pointer arritmetic or borrow checkers if I script gameplay logic. I mean I don't need a JIT compiler for that, but it is the fastest way to program, test and change scripts. Every Engine has somthing like that if JIT or not. Godot has GScript, Unreal has Blueprints and Unity has C#. But the underlying base from all is developed in C++.
@SamualN
@SamualN 3 жыл бұрын
@@kappilino but all that happens is you move all the safety checks into runtime rather than compile time unless you remove the safety checks, but then you end up with JavaScript (which is amazingly fast - but not so nice to program in) maybe you're looking for something in between, I recommend TypeScript, compile times are fast, and it turns your code into JavaScript (which is a fast JIT compiled language)
@kappilino
@kappilino 3 жыл бұрын
The idea of an scripting solution not to have any language feature that needs all the compile time safty checks. It should be much simpler than a full blown programming language. This is the reason why engines like Godot, Unity or Unreal have such solutions. By the way, the CryEngine and Lubayard use lua for scripting. TypeScript is strongly bound to JavaScript and much to difficult to integrate as a games script language without it. And with javascipt together it is dedicated to web programming, not for platform native games. For that the javascript base is much to slow and much to far away from the hardware.
@_slier
@_slier 3 жыл бұрын
rust is trash.. its overly complex..better just use c++ instead
@4mb127
@4mb127 3 жыл бұрын
Zig is cool but I just wish the multi-string syntax was better. I don't feel like inserting \\ into everything when I want to edit a non-code block.
@TheDesttinghim
@TheDesttinghim 3 жыл бұрын
The better choice here is to use @embedFile() and put the non zig stuff in a separate file. The multi-string syntax was specifically chosen so that every line could be parsed separately, which speeds up compile time
@4mb127
@4mb127 3 жыл бұрын
@@TheDesttinghim The current multi-string syntax effectively makes the feature itself useless. Being able to do the same thing in other ways is a red herring.
@davidste60
@davidste60 3 жыл бұрын
You should file a "feelings violation" bug report.
@satellite964
@satellite964 3 жыл бұрын
Jai can't come soon enough
@felixinfinita3777
@felixinfinita3777 3 жыл бұрын
As I know many of the zig features were inspired by jai
@charliegnu
@charliegnu 3 жыл бұрын
@@felixinfinita3777 Zig is inspired by C. Check the Road to 1.0 video to see how they came up with it. Sadly Jai is not publicly available yet so the Zig devs don't have access to it.
@felixinfinita3777
@felixinfinita3777 3 жыл бұрын
@@charliegnu jai is not available, but its development and features are covered in Jonathan Blow YT channel for many years (since 2015 I think), also Jon presented it in few talks. But I guess I don't know if some zig features really inspired by it (separate build file and compile time execution) , I assume language creator at least aware of it :)
@Hoowwwww
@Hoowwwww 3 жыл бұрын
we found a john simp
@felixinfinita3777
@felixinfinita3777 3 жыл бұрын
@@Hoowwwww I think I am :D
@akshayazariah
@akshayazariah 3 жыл бұрын
Zig is fantastic
@joshbishop
@joshbishop 3 жыл бұрын
When there's no views and 3 comments...
@gamefromscratch
@gamefromscratch 3 жыл бұрын
... yeah, take KZbin statistics with a grain of salt for the first 2 days.
@GaryChike
@GaryChike 2 жыл бұрын
YASPL .. Yet Another Systems Programming Language Carbon, Hare, Rust, Nim, Odin.
@wahomemutahi1008
@wahomemutahi1008 3 жыл бұрын
Lol
@darak2
@darak2 3 жыл бұрын
There is a huge void to fill with a system-level language which keeps things simple and is tailored to the way modern CPUs work (Go comes close, but the GC makes it unsuitable for the task). Unfortunately, new trendy languages tend to be extremely opinionated and user-hostile, and Zig is no exception (for example, it will fail to compile any source code containing a tab character or Windows endlines).
@tochka832
@tochka832 3 жыл бұрын
i really liked the idea of Rust but dealing with its quirks is sometimes just unbearable, development is just becoming a struggle of overcoming the compiler requirements... Go is nice in terms of its ease (GC is one of the things that actually helps in this regard a lot), but the lack of proper generics (using interfaces everywhere is costly at runtime) and metaprogramming does really hurt tho
@ezioauditore7636
@ezioauditore7636 3 жыл бұрын
@@tochka832 Rust can be really easy to use if you take the time to learn it... but well, it takes a lot of time to learn it. Hopefully more of its better innovations can trickle down to other programming languages though, as we're already seeing.
@skaruts
@skaruts 3 жыл бұрын
I agree. Occam's razor kinda tells me modern languages verge on paranoia about safety and whatnot, and end up overly-complex behemoths with cryptic syntax or overly petty compilers. I mean, I'm no expert really, and those things may be great for large teams (though I wonder how true that is), but makes the languages unbearably costly to learn for people like me. And then, if the most stable kernel in existence can be reasonably developed with a simple and unsafe language, then maybe those languages are trying too hard. And yea, some of them are way too opinionated...
@ekremdincel1505
@ekremdincel1505 3 жыл бұрын
@@skaruts Linux disables tons of optimizations via non-standart compiler flags. If you are ready to sacrifice optimizations for safety, you already can. Linux is written with help of dozens of experts and the development of Linux is supported by dozens of companies. You will not have those when you start a project. Yet Linux still has security problems.
@TheDesttinghim
@TheDesttinghim 3 жыл бұрын
The tab thing is because zig is pre-release. This seems like a really silly thing to get worked up over, especially because zig fmt will automatically correct the tabs.
@gabehcuodsuoitneterp203
@gabehcuodsuoitneterp203 2 жыл бұрын
Works w/ Snow Leopard?
@Fine_Mouche
@Fine_Mouche 2 жыл бұрын
why we should game dev in this lange over C++ / C# / Java / Python(pygame) ?
@mgord9518
@mgord9518 2 жыл бұрын
Why would you use any of those languages over any of the other ones?
@Fine_Mouche
@Fine_Mouche 2 жыл бұрын
do system langage = assembly langage or processor langage ? if yes, i was currently think about if we can remplace the actual one or it's too wide used that it's impossible to change it.
@hermannpaschulke1583
@hermannpaschulke1583 3 жыл бұрын
Why use Zig over Rust?
@charliegnu
@charliegnu 3 жыл бұрын
It's a different paradigm. There's no borrow checker, allocations are explicit but it makes it very easy to allocate and free memory without mistakes, comptime makes up for generics and macros, it's a simple and fun language you can learn in an afternoon. I'd say both have their space so try both. The more tools in your belt the better.
@UliTroyo
@UliTroyo 3 жыл бұрын
There's actually a really good talk on youtube by Zig's creator Andrew Kelley that covers pretty much that: kzbin.info/www/bejne/faeVemqnidqrbck My personal favorite Zig feature is you don't need to write bindings for C libraries, you can just link them as if you were writing C (so SDL just works out of the box, for example).
@ekremdincel1505
@ekremdincel1505 3 жыл бұрын
@@charliegnu Allocations are also explicit in Rust, aren't they?
@TheDesttinghim
@TheDesttinghim 3 жыл бұрын
@@ekremdincel1505 not necessarily. In zig, the standard is anything that allocates takes an explicit allocator argument. In Rust, strings, vectors, etc will use the implicit global allocator. This makes it difficult to tell when something is allocating, unless you go through and read the source code for the standard library. Another difference, IIRC, is that zig considers OOM an error that must be handled, whereas Rust ignores it.
@ekremdincel1505
@ekremdincel1505 3 жыл бұрын
@@TheDesttinghim You can also use custom allocators in Rust, most of the collections are generic over an allocator (including `Vec`). You just don't need to explicitly write it when you use the global allocator. But I can say that using a custom allocator is not something you do usually in Rust, and therefore, there is not really an idiom around designing your library to allow users use custom, non global allocators unless you write a specific data structure.
@syedqutub4054
@syedqutub4054 Жыл бұрын
Can you make a video for v programming language
@PibePlayer
@PibePlayer 3 жыл бұрын
I hate languages that use "var" personally :(
@PibePlayer
@PibePlayer 3 жыл бұрын
@Darren Munsell nop, I prefer to define the type, using Int, etc, even if it's a little verbose
@TheGeemili
@TheGeemili 3 жыл бұрын
@@PibePlayer you can define the type, it just takes the form `var x: u8 = 1` instead.
@PibePlayer
@PibePlayer 3 жыл бұрын
@@TheGeemili but if I have to review other people's code or learn from other people's code, they'll probably use var, without explicit type, and I dislike that, sorry 😅
@kaiser3626
@kaiser3626 3 жыл бұрын
@@PibePlayer You have always specify the type in Zig. It is not optional even if you use const or var. Why dont you inform first? 😂
@PibePlayer
@PibePlayer 3 жыл бұрын
@@kaiser3626 no, it's always implicit, did you watch the video? Did you read the examples? Unless it's a class declaration, it doesn't use the explicit declaration...
@skaruts
@skaruts 3 жыл бұрын
Why does every language have to favor camel case these days....
@gamefromscratch
@gamefromscratch 3 жыл бұрын
A secret cabal of camels secretly rule the world.
@skaruts
@skaruts 3 жыл бұрын
@@gamefromscratch facts
@codedecode1498
@codedecode1498 3 жыл бұрын
first again
@mayur9876
@mayur9876 3 жыл бұрын
I gave zig multiple tries but the overall syntax decision and language design doesn't feel right to me.
@sanjaygatne1424
@sanjaygatne1424 3 жыл бұрын
Please make a video on V programming language.
@_slier
@_slier 3 жыл бұрын
the best low level language so far.. might displace c for sure
@annasofienordstrand3235
@annasofienordstrand3235 3 жыл бұрын
Delusional, nothing will ever displace C
@_slier
@_slier 2 жыл бұрын
@@annasofienordstrand3235 lul
@zytr0x108
@zytr0x108 Жыл бұрын
No reason to replace C
@absolutebottomfeeder
@absolutebottomfeeder 3 жыл бұрын
m
@nialltracey2599
@nialltracey2599 3 жыл бұрын
Do you really really really want a Zig? a Zig? ah?
@TheJungaBoon
@TheJungaBoon 3 жыл бұрын
Eventually, when neural implants are as common as tylenol at a Walmart, there will be a programming language that can just produce your game simply by thinking it.
@SamualN
@SamualN 3 жыл бұрын
only a few hundred years to go!
@mgord9518
@mgord9518 2 жыл бұрын
And bugs will still be easy to come by
@lukelader
@lukelader 3 жыл бұрын
Funny 'cause zig in arabic means shit 😂
@baxiry.
@baxiry. 3 жыл бұрын
In classical Arabic and Moroccan Arabic it means: deviation
@vladimirkraus1438
@vladimirkraus1438 3 жыл бұрын
I like zig. So I suggest that arabic chooses another keyword for "shit".
@GreyDeathVaccine
@GreyDeathVaccine Жыл бұрын
Nim is interesting language 🙂
@RandomGuyyy
@RandomGuyyy 3 жыл бұрын
C++ 4ever. Embrace the pain.
@felixinfinita3777
@felixinfinita3777 3 жыл бұрын
Bow to the Commitee of Standardization!
@tizilogic
@tizilogic 3 жыл бұрын
Great.. YALTWDN Yet another language the world doesn't need
@JasimGamer
@JasimGamer 2 жыл бұрын
زق ؟
@6rrdDSx5
@6rrdDSx5 3 жыл бұрын
vlang > ziglang
@vladimirkraus1438
@vladimirkraus1438 2 жыл бұрын
There are still so may serious bugs in vlang...
@ingframin
@ingframin 3 жыл бұрын
The syntax is really ugly though :-(
@_slier
@_slier 3 жыл бұрын
wat? if zig is ugly, then i dont know about rust then..trash maybe
@diamondtroller1253
@diamondtroller1253 3 жыл бұрын
Zig sounds like an alternative to golang
@ekremdincel1505
@ekremdincel1505 3 жыл бұрын
No
@mgjulesdev
@mgjulesdev 3 жыл бұрын
wow. that's very far far fetched lol
@gustavojoaquin_arch
@gustavojoaquin_arch Жыл бұрын
​@@ekremdincel1505YES
@ekremdincel1505
@ekremdincel1505 11 ай бұрын
@@gustavojoaquin_arch I mean, you probably could use Zig instead of Go for a lot of things but to say that Zig is an alternative for Go wouldn't be coherent with designs and goals of the languages. It is like saying C is an alternative for Python.
@TheJobCompany
@TheJobCompany 3 жыл бұрын
Wish we could transpile zig to nim
@TheJobCompany
@TheJobCompany 3 жыл бұрын
@4tran yeah but it would be kinda funny
@TheJobCompany
@TheJobCompany 2 жыл бұрын
@@MustaphaRashiduddin-zx7rn woah there, you can't do that, you'll have to use at least css as well
@xfadedxshadow
@xfadedxshadow 3 жыл бұрын
Legit just looks like a modified version of rust
@vladimirkraus1438
@vladimirkraus1438 2 жыл бұрын
If you claim it looks similar to rust, then you are not a programmer. They are completely different languages.
@viri1695
@viri1695 2 жыл бұрын
shut up timmy go do your maths homework
@henrypowell3496
@henrypowell3496 3 жыл бұрын
its just JS
@belgarathlesorcier8385
@belgarathlesorcier8385 3 жыл бұрын
but better and compiled
@henrypowell3496
@henrypowell3496 3 жыл бұрын
@@belgarathlesorcier8385 was talking about syntax
@FPChris
@FPChris 2 жыл бұрын
The syntax is awful.
@adsick_ua
@adsick_ua 3 жыл бұрын
I bet Rust is much better
@mgjulesdev
@mgjulesdev 3 жыл бұрын
is it though?
@techpriest4787
@techpriest4787 3 жыл бұрын
"Zig is to C as Rust is to C++", except Rust also is to replace C, and C may fall first. There is a video called something like "a new language for the next 40 years". It was all about replacing C, not C++. That's how flexible Rust is! Also Rust is at version ~1.50, so much further ahead over Zig while still also being young itself. 5 years have past since version 1.0.
@adagas-caouchristian7875
@adagas-caouchristian7875 3 жыл бұрын
True that, however Zig is mainly the effort of one person (instead of a corporation) and Zig is quite younger than Rust, while also having somewhat different goals. Both are sound options for systems programming without the hassles brought by C or C++ imho. Even though Rust is more mature and has much more libraries, I think both languages have their own charm, and if we give Zig enough time, it might even become Rust's brother in terms of both performance and ecosystem size.
@tomweh3710
@tomweh3710 3 жыл бұрын
@@adagas-caouchristian7875 would love some middleground between the too, imagine rust without macros, generics or trait but with zigs comptime features, explicit allocations and c/c++ interopability. I know, i know probably not so easily mixable but sure thing sounds attractive to me :D
@Hoowwwww
@Hoowwwww 3 жыл бұрын
unsafe is a feature of C, it is not a downsite, it is what allows to speak to the hardware directly without overhead C will never die rust is like scala, it wanted to kill Java, result it killed itself because it is bloated and slow to compile, exactly like rust
@SmplySilver
@SmplySilver 3 жыл бұрын
you're kidding yourself if you think C is going to be replaced anytime soon
@ezioauditore7636
@ezioauditore7636 3 жыл бұрын
@@Hoowwwww Rust is meant to replace C++, not C. Plus, it has unsafety, but made the sane decision to separate it from what is known to always be safe. Its release compile times will improve, but obviously won't ever match C because of how much more work it has to do to compile the language, but debug times are going to improve almost 7x when the cranelift backend becomes the new default. For now, you have to download the cranelift backend as its own separate thing.
Rust For Game Development
20:37
Gamefromscratch
Рет қаралды 88 М.
3 things you might like about Zig
39:32
Zig Meetups
Рет қаралды 19 М.
DEFINITELY NOT HAPPENING ON MY WATCH! 😒
00:12
Laro Benz
Рет қаралды 49 МЛН
아이스크림으로 체감되는 요즘 물가
00:16
진영민yeongmin
Рет қаралды 56 МЛН
Nutella bro sis family Challenge 😋
00:31
Mr. Clabik
Рет қаралды 13 МЛН
ОСКАР vs БАДАБУМЧИК БОЙ!  УВЕЗЛИ на СКОРОЙ!
13:45
Бадабумчик
Рет қаралды 5 МЛН
Zig for Impatient Devs
9:48
Isaac Harris-Holt
Рет қаралды 74 М.
Intro to the Zig Programming Language • Andrew Kelley • GOTO 2022
50:14
When Zig Outshines Rust | Prime Reacts
23:31
ThePrimeTime
Рет қаралды 136 М.
Why a linker author had to write a YAML parser in Zig
38:26
Zig Meetups
Рет қаралды 13 М.
V - Best Programming Language to Learn in 2023?
8:44
Code to the Moon
Рет қаралды 133 М.
God-Tier Developer Roadmap
16:42
Fireship
Рет қаралды 7 МЛН
Trying Zig Part 1
1:30:00
TheVimeagen
Рет қаралды 84 М.
Know what your functions are doing? - Side effects in 12+ languages
20:32
Rust and RAII Memory Management - Computerphile
24:22
Computerphile
Рет қаралды 220 М.
Сколько реально стоит ПК Величайшего?
0:37
Собери ПК и Получи 10,000₽
1:00
build monsters
Рет қаралды 2,7 МЛН
Красиво, но телефон жаль
0:32
Бесполезные Новости
Рет қаралды 914 М.
⚡️Супер БЫСТРАЯ Зарядка | Проверка
1:00