00:01:30 Introduction 00:06:37 Origin Story 00:09:26 How did you learn BASIC? 00:15:15 Did porting BASIC programs help you? 00:18:40 What were your first programming jobs? 00:24:27 What is your opinion on software quality today? 00:36:25 What would you say to developers with a bad coding culture? 00:44:41 Did you have discussions about how long certain code would live? 01:01:42 Do you notice a difference in code quality from developers coding from scratch? 01:21:08 What inspired you to create the C3 programming language? 01:31:15 How do you keep motivated to add features to C3? 01:33:18 What projects do you have in mind to build using C3? 01:40:56 How do you think of the language evolution over time? 01:48:54 Looking at C3 features 01:49:32 C3 tagline: "Simple, fast, safe, compiled." 01:57:40 C3 module system & semantic macros 02:04:28 C3 slices/slicing 02:09:28 vkQuake + C3 project 02:18:42 C3 vectors & swizzling 02:25:55 C3 error handling: optionals 02:30:30 C3 error handling: if-try 02:35:55 Rapid-fire questions 02:36:07 What programming book/article/video do you recommend? 02:36:35 What advice would you give to beginner programmers? 02:37:30 What is your favorite game? 02:39:51 Wrap up 02:40:10 "Go out and have fun programming."
Since C3 is used frequently by youtuber and streamer Tsoding I‘m really interested in the language. The interview comes excactly at the right time. Thanks alot.
C3 is a modern C language that has many of the features that I've always wanted. Unlike Zig, it doesn't try to significantly change syntax or do new things for the hell of it. Unfortunately, the documentation is either incomplete or outdated in some areas (notably, the standard library).
Even though C3 is probably better than C, I am still using C because it is standard and has better tooling, better platform support, does not need bindings to C APis, has cool compiler features like ASAN, UBSAN, LLVM optimization remarks, etc. and you can sort of work around all the quirks and misdesigns in C by replacing the standard library with your own abstractions.
2:25:44 how stable is C3 syntax nowadays? i won't be doing anything "FUll production" in it obviously, just small personal projects. but i'd still like to have some idea about the timeline of how long will it work reasonably.
I moved to Pika OS because I wanted to have an Debian/Ubuntu base for Swift 6… Little did I know, Pika OS uses distro box and it doesnt use apt! It uses apx, which is a multi package manager installer. So, I just installer c3c like I was using my old arch system 😂. When people say you can play on linux, you really can play on linux. I even kept my editors light using only Helix and Neovim. Also related, c3c is the compiler command. Because we c the future in c3. 💥 Nah I am just kidding, I need to code in it more. But it is lile if you take the simple nature of Go, with the power of C, and the sort of Rust-lite/ML-lite expressiveness in functional execution.
if you're investing time for a career, none of them. if you want to try something for fun or hobby, just pick one where you like the syntax/philosophy.
It really depends on what you want to do. But if your interested in "Graphics Programming"; Odin for sure. Your up an running and skip pre-processor step and get straight to messing around with the GPU or using a framework like Raylib or SDL2. Also the error messages are more like, shadowing a senior and you get more of an intuitive sense of pointers from just using and learning if you've never touched a C like language.
There are also allocators, which can be useful around (de)allocations. The std lib also provides a few types of allocators to help with this. Not quite the Rust level of memory safety, but it helps.
fn TYPE name, is ugly, i'd have prefered fn name TYPE these people don't understand how important it is to make your language GREPPABLE cool language, but the syntax is a no for me