Folks who were using C/C++ were doing so because they needed the performance. That pretty much instantly eliminates GC languages. All you are left with is Rust, maybe Zig, and possibly Mojo from modular. The only other option is Carbon (presuming google adds some memory safety features. For now, I can only recommend Rust.
I mean, Go and Java are incredibly performant languages as well. And it's GC'd. Lots of dev teams use C/C++ simply because the team already knows the language, not because of performance itself. So when going from something slow and starting to re-write for more performance, C/C++ becomes a good option. You don't need to train 20 people in a new language nor hire Rust developers. Learning Rust is daunting and takes a long time to become competent and even longer to become good. So making the entire team switch to it from C/C++ doesn't make a lot of sense unless performance is truly the biggest reason they were using it in the first place. Go is a great middle ground for teams that don't need absolutely top-tier speed, they just need something better than like Node, Python, or whatever else they're using. If they're considering Java, but don't have Java developers on hand-they could consider Go instead. It takes less time to learn Go, is memory-safe, and the speed of development is top-tier (for the performance gains).
Because of the craziness of the Rust Foundation, I'm not sure I would recommend Rust for devs. At least, if you go into it, just know it's a wild ride at the top.
@@edensheiko I think there is a rust HAL for some stm32 devices. Unfortunately I dont think that any rtos supports rust yet so only baremetal with rust
Interesting content, but the issue is, the use of C and CPP is so vast particularly in Embedded Systems and device drivers that it will take a lot of effort before the full transition can actually happen. It will be interesting to C how much adoption these languages get. Another thing is that today in most of the university curriculum C is the primarily used language and even in most interviews too candidates are asked C. So if things really have to change those need to be done right from the grass root level, i.e., the universities and schools so that the GenZ can really appreciate why it is needed.
I started learning programming with C++ as my first introductory language. But as of now i havent programmed in C++ for 3 years. I moved primarily to Python, Zig, and Flutter with plans to learn Mojo soon next month.
There are so many programs that do not belong in a browser. This can only be true for web programs, and even then, web assembly might be a bit overkill for some websites.
@@oboy_64 One day, the browser will run a browser, which will then run internet itself. By then, you won't use a browser on some OS to access internet, you'll use THE browser to run an OS that runs internet-complete with gov certs. You'll browse nothing but you'll be happy!
I disagree. Learning curve is a big part of how accessible a technology will be. There are some JavaScript devs who wouldnt even touch typescript, or any stongly typed language… so it is doubtful that people switch over to Wrbassembly with Rust or another strongly typed language.
I like Nim. Nim is super flexible - it can compile to: Native executables (like C/C++) JavaScript (for web) C and C++ code WebAssembly Objective-C (for iOS/Mac) Plus it has cross-compilation for different platforms (Windows/Linux/Mac) and lets you pick your memory management (garbage collection or manual). Pretty much lets you write once, run anywhere! 🚀
I'm surprised LISP isn't on the list. It's about as memory safe as you can get. And it was built around the functional programming paradigm, which is all the rage right now.
We will soon have cpp2 with a permissive licence, and it solves most common memory safety problems of C++. The Rust bubble has already popped, and the hype is fading away. The large scale future is somewhere around Carbon, Circle or cpp2. Rust might be able to get some niches, but its hype is already in the disillusionment phase.
I know C and I like it, but since I know how to program in GO it's so hard to push myself to do anything in C. I like C++ but I don't know ++11,14,17,20,23, Just C++98. I hate templates and auto pointers and all that new stuff because I don't use it very frequent and didn't memorize it yet. Modern C++ seems to me so strange. But Rust looks even worse to me than modern C++:) Cheers! How about Zig?
It probably looks strange to you because it exposes complexity and idiomatic code usually implies the use of standard set of abstractions. I've noticed that Go developers hate dependencies and love to reimplement abstractions.
@@dmitriidemenev5258I couldn't agree more. Maybe it's because you don't have to remember all these abstractions and it's easy to recall after some time what have you done by yourself?
This misguided call, even from White House instills the wrong concept that programs made in Rust are incapable of being attacked by buffer overflow attacks. First this is not true there is a lot of ways of following Rust ways and still have huge exploits available. And yet lets remember that many attacks those days use design flaws on the chips (remember Spectre?) and the payload installs on the BIOS of the computer intercepting calls to disk. You can move away from C++ and C but don't let this make you have a false sensation of safety. As always those that don't really are the interface between the chair and the keyboard come with a simple, cheap, fake, a size fits all rationalization that will not change safety of of systems and will create a false aura of safety. Use Rust it has advantages and disadvantages, but keep your feet in the ground, because reality always intrude in your cognitive biases.
Rust is the game changer from GC to non-GC. Don't learn a language because is your favorite. Learn a programming language because it save time and solve your problem with better system.
@@Phantom-lr6cs You're right that rustc currently depends on LLVM, which is written in C++. However, it's possible to use Cranelift as a compiler backend instead. Cranelift is written in Rust. It was pragmatic to use LLVM, so Rust uses that. Rust *can* exist without C++. However, what's the point to avoid using what's available? LLVM is quite slow, so it's a good reason but for now it's good enough.
The functional paradigm promotes much better safety than imperative. Scala, OCaml and Scheme (Lisp) would be much better than Rust, as they're also memory safe and garbage collected. Sounds like these "experts" just want to promote Rust because it has such a loud community.
Rust supports functional programming with zero-cost abstractions. You do have .map, .filter, .reduce and everything is immutable by default. You can keep it this way, if you want to but Rust's idiomatic code combines features of procedural and functional programming.
Of course Python. It's significantly more versatile than Java. In addition, Python is open-source, whereas the Java ecosystem is sort of controlled by Oracle.
If your C++ code in 2024 looks like 1:44, I full-heartedly recommend you to stop write anything in C++ for the sake of the WHOLE WORLD. That piece of code is only acceptable if you are an employee tasked to maintain a 20+ years old legacy code written in C++98/03. Large portion of the industry have already migrated to C++14 or 17 for their new codes, and one of the first things they prohibit is exactly what is written in 1:44. As can be often witnessed in various benchmarks, presenting 1:44 as a representative C++ code is simply disingenuous and disappointing.
C/C++ isn't going anywhere b/c the performance and energy cost is good. Rust,zig and the other languages have problems to. For example zig is not production ready, Rust cargo have the same feeling as node for simple crud project the entire thing become 300mb. C# doesn't have good support on linux which most the of developers and server run on. Java is the only on that comes near C/C++ but lackes in perefomance. The only language that should have replaced but failed is dlang B/c it couldn't attract people it got small community and the packages arr out of data.
Target dir is big because it contains incremental compilation cache, which makes consequent builds faster. The binaries themselves are reasonably small. The debug symbols aren't stripped by default but you can do this if you want. According to the study of energy efficiency of programming languages, Rust lands between C and C++ in terms of performance and energy efficiency.
You can generally transpile C++ into Rust with unsafe uses because the problem with C++ is precisely its semantics. However, there's a tool sponsored by DARPA for assisted rewriting C++ to Rust.
The irony of this is that much of the core “infrastructure” of the tech world come from open source. Right now, much work is being done in AI by individual developers that will be core infrastructure of the future. Such as GGML and llama.cpp which is written in what? C++!!! The core of the most important libraries in Python are already what? C++!!! C++ isn’t going anywhere for the next 69 years hahaha
Rust with its ownership model is a GC language. It’s model is directly taken from Simula I, it’s nothing new or unique GC doesn’t mean “mark and sweep” only Ownership, raii, ref counting are all GC strategies. Rust is just another GC language, and corporate sales speak (like from Mark Russinovich) doesn’t make facts disappear Problem with rust (in terms of safety), is that is borrow checker is too opinionated, and returns false positives too easily. It will reject valid code that it can’t apply simple parsing rules to, requiring the user to then mangle and over complicate how the program sees its own data Good luck to anyone who has to maintain the mess that this is going to cause
The "GC" is ran at compile-time. More appropriately it's called scope-based resource management. There's a similar concept in C++ but it's refined in C++ because in Rust the lifetimes are reified and there's a borrow checker. Indeed, Rust just improved on existing ideas. However, the result is astounding. Borrow checker is not "too opinionated". The foundational ownership and borrowing rules are grounded in the limitations of the real hardware and resource management. And the rare cases where it is indeed too strict are going to be addressed by the next generation of borrow checker, Polonius. Rust's type system just reflects what things are. In C++ and C people also speak in terms of lifetimes. However, they have no language entities to reflect or represent that.
@@dmitriidemenev5258 it’s not run at compile time .. automatic reallocation is calculated at compile time, and injected into the object code to run at runtime. So you still end up with GC at runtime Rust is a GC language And yes, you can optionally build C++ or D (or even Zig) to use GC if that suits the task. Rust only lets you break out if GC by using unsafe and jumping through hoops (Same as go - you can jump into unsafe mode to do manual memory management) Like Go though, if you need to jump in and out of unsafe mode, you are probs forcing the wrong tool on the problem
Cybersecurity experts recommend prioritizing memory safe languages for software development. Click to expand 00:01 ✦ CISA recommends moving away from C and C++ due to memory safety vulnerabilities. 00:59 ✦ Memory safety languages automatically manage memory to prevent security vulnerabilities. 01:59 ✦ US cybersecurity experts recommend transitioning from C and C++ to memory safe languages like Rust. 02:57 ✦ Cybersecurity experts recommend using Rust for its memory safety and reliability. 03:55 ✦ Recommended programming languages for cybersecurity 04:52 ✦ Python is a popular and versatile language. 05:50 ✦ Switching to memory-safe languages for security reasons
You can write vulnerable code in any programming language. The reason people are excited about Rust is it specifically makes it much harder to write code with memory vulnerabilities, and does so while still offering performance comparable to languges like C/C++. Of course there will be vulnerabilities associated with Rust projects. However, there will almost surely be fewer memory vulnerabilities associated with Rust projects than older C/C++ projects due to the way the Rust compiler forces you to write code.
No, this just won't happen. Maybe a program might be buggy because it was badly written, but Rust makes it way easier and better. By when do you think this will happen? I'll set a reminder.
@@antifa_communist you sound like the same sort of people I warned about crowd strike - software installed on every server, with admin rights to those servers, connected straight through all firewalks back to a "central command" outside the company. I literally warned my company of this 2 weeks before it happened, and every server was taken out, including the disaster recovery servers. With a tag of "antida_communist" I can already see you have much experience to gain to awaken, and get past your own ego and arrogance. Take off those filters, and see the world as it is.
11 million from microsoft is all in? no that is doing whatever you please but trying to have a good publicity article for the least amount of dollars. better put in some support
I am not claiming to know everything but guess what, a Destructer can be used to delete these pointers. All problems can be solved by being a good programmer. Lazy people make garbage code.
The Gov can do what they want, Lazy people will make Garbage Rust code. I am going to focus on code for my purposes. Chasing tech fades does not help me accomplish my objectives. I the only way they can benfit from making the switch is to rewrite all that legacy C code in Rust. Some high ranking Linux devs would love to switch to Rust probably just the spite C++ devs but these are the same people who stuck with C--. In the end, all are fine tools but I am supecious about using a languange that locked down to a companies walles Garden. Swift , Carbon, C# and even Kotlin. I can use them but I am not going to use them for personal projects. Kotlin the exception to the rule but it leaves a bad taste in my mouth. Its like Googled designed simple things in Kotlin just to be annoying for Java devs. I wonder if Rust is different.
40 years of tech debt and backward compatibility, if you want a mess, you want C++. Seriously Rust and Zig have the same performance and it will only get better, at the end of the day it's all compiled down to assembly. It's not like we're not gonna use the knowledge we learnt from developing C and C++ in this new languages.
You sound weirdly confident for someone who apparently never heard of LLVM. Also you don't need to repeat 40 years of work to gain the same level today because now people know the lessons learned in that time.
Neither Rust nor Go are scripting languages. Also, thinking "scripting languages are for kids" is for kids. The world runs on Excel VBA, batch, perl, and python scripts
@@JanJozefo C/C++ is a Mercedes. Fully realized, and refined. Any new language will start as a bicycle. Why waste your time. Like I said no new language can compete with C/C++ compilers which are decades refined, documented, perfected, and optimized. The rust, python, C# etc languages are bicycles. Have fun.
@@tazanteflight8670 So why is C++ still getting tons of features and changes with every new release if it's "fully realized and refined" ? The way you talk about it makes you sound like you never used either.
@@tazanteflight8670 sure, we agree on that 100%. It's not that there's no reason to use C/C++. It's not an either/or situation. Some projects are just better suited to some languages due to time-constraints and other factors that make it such that manual memory management is a much greater liability than the performance hit from using Rust or Go
Any C++ Professional SWE will laugh at this. But hey, people also believed Covid, so, whatever these "big names" say, people will believe and follow like sheep. Anyways. All the Engineers here are Professional C++ Engineers, but we all know our fair share of Rust, and still, we just use it for small stuff. Some parsing, Networking, Unit Testing, etc. Our big Projects are all C++ Projects and that will remain so, especially now that we have everything in C++20+. Rust would simply not make it. We have tried. But when it comes to enterprise-level applications, it's just a hell. Also, those problems mentioned in the video? That's so easy to avoid. But sure, everyone will have a particular opinion. I don't listen to those 'experts'. Expert Scientists at University also told me that Consciousness was a function of the brain. They also told me that men came from apes. So, what do they know?!!
You had me at Covid, you a flat earther and climate denier too? COVID happened and C++ is still buggy. Oh and also you are just barely smarter than an ape it seems. Wow, dark ages brain.
Started with Assembly then C++, haven't done either in decades, and re-started in the last 8 months with Python and C.
I absolutely love Go, my favorite language right now.
I can't say it better! Cheers!
what are you programming?
Folks who were using C/C++ were doing so because they needed the performance. That pretty much instantly eliminates GC languages. All you are left with is Rust, maybe Zig, and possibly Mojo from modular. The only other option is Carbon (presuming google adds some memory safety features. For now, I can only recommend Rust.
I mean, Go and Java are incredibly performant languages as well. And it's GC'd.
Lots of dev teams use C/C++ simply because the team already knows the language, not because of performance itself. So when going from something slow and starting to re-write for more performance, C/C++ becomes a good option. You don't need to train 20 people in a new language nor hire Rust developers. Learning Rust is daunting and takes a long time to become competent and even longer to become good.
So making the entire team switch to it from C/C++ doesn't make a lot of sense unless performance is truly the biggest reason they were using it in the first place.
Go is a great middle ground for teams that don't need absolutely top-tier speed, they just need something better than like Node, Python, or whatever else they're using. If they're considering Java, but don't have Java developers on hand-they could consider Go instead. It takes less time to learn Go, is memory-safe, and the speed of development is top-tier (for the performance gains).
Because of the craziness of the Rust Foundation, I'm not sure I would recommend Rust for devs. At least, if you go into it, just know it's a wild ride at the top.
for low level like stm32 (with Freetos) I don't have choice its ONLY C
@@edensheiko from a bit of searching, you could possibly use Rust and RTIC. It's supposedly the equivalent for microcontrollers.
@@edensheiko I think there is a rust HAL for some stm32 devices. Unfortunately I dont think that any rtos supports rust yet so only baremetal with rust
Interesting content, but the issue is, the use of C and CPP is so vast particularly in Embedded Systems and device drivers that it will take a lot of effort before the full transition can actually happen. It will be interesting to C how much adoption these languages get. Another thing is that today in most of the university curriculum C is the primarily used language and even in most interviews too candidates are asked C. So if things really have to change those need to be done right from the grass root level, i.e., the universities and schools so that the GenZ can really appreciate why it is needed.
I'm currently using rust in my projects and i'm pretty much happy with it. I'dont need any other language except android or ios.
Tauri also has a beta support for iOS and Android development.
Also, you can create Java and Swift bindings for Rust libraries.
I started learning programming with C++ as my first introductory language. But as of now i havent programmed in C++ for 3 years. I moved primarily to Python, Zig, and Flutter with plans to learn Mojo soon next month.
So based on your statement I can assume that you're programming for living?
@@dimadeloseros1 sounds more like they are playing around with languages and doing nothing lol Can't master them all
$10M doesn't really make it 'all in' for microsoft
Rust
GoLang
C Sharp
Python
Java
Swift
Haskell
Scheme
Common Lisp (See @paulsander5433)
Safe C++ (soon)
Lua
Javascript
My dude has the best logo for Swift! 🤣
I think compiling to Web Assembly will be the future. Write once run everywhere.
Java 2.0
No, unless every program becomes a web program.
There are so many programs that do not belong in a browser. This can only be true for web programs, and even then, web assembly might be a bit overkill for some websites.
@@oboy_64 One day, the browser will run a browser, which will then run internet itself. By then, you won't use a browser on some OS to access internet, you'll use THE browser to run an OS that runs internet-complete with gov certs. You'll browse nothing but you'll be happy!
I disagree. Learning curve is a big part of how accessible a technology will be. There are some JavaScript devs who wouldnt even touch typescript, or any stongly typed language… so it is doubtful that people switch over to Wrbassembly with Rust or another strongly typed language.
I am yet to meet an actual "Cybersecurity expert" who is actually an expert.
Or knows how to program
You are cluless deluxe lol 😂
I like Nim. Nim is super flexible - it can compile to:
Native executables (like C/C++)
JavaScript (for web)
C and C++ code
WebAssembly
Objective-C (for iOS/Mac)
Plus it has cross-compilation for different platforms (Windows/Linux/Mac) and lets you pick your memory management (garbage collection or manual). Pretty much lets you write once, run anywhere! 🚀
MS will change it into Rust++
@@misterheath even better!
Give me Rust-- (minus minus), the language is already full of garbage and bloated like no tomorrow.
Then MS Visual Rust++ history repeats itself 😂
I'm surprised LISP isn't on the list. It's about as memory safe as you can get. And it was built around the functional programming paradigm, which is all the rage right now.
And why do you want to use new and delete in cpp? Maybe if you learned to program in the 80's
We will soon have cpp2 with a permissive licence, and it solves most common memory safety problems of C++. The Rust bubble has already popped, and the hype is fading away. The large scale future is somewhere around Carbon, Circle or cpp2. Rust might be able to get some niches, but its hype is already in the disillusionment phase.
BAHAHAHA good one 😂
Primarily code in Python, but Go has really caught my attention. ( market need is strong)
I know C and I like it, but since I know how to program in GO it's so hard to push myself to do anything in C. I like C++ but I don't know ++11,14,17,20,23, Just C++98. I hate templates and auto pointers and all that new stuff because I don't use it very frequent and didn't memorize it yet. Modern C++ seems to me so strange. But Rust looks even worse to me than modern C++:) Cheers!
How about Zig?
same here bro, the new c++ stuffs are very strange
It probably looks strange to you because it exposes complexity and idiomatic code usually implies the use of standard set of abstractions.
I've noticed that Go developers hate dependencies and love to reimplement abstractions.
@@dmitriidemenev5258I couldn't agree more. Maybe it's because you don't have to remember all these abstractions and it's easy to recall after some time what have you done by yourself?
Rust is far better
is node.js or something about the v8 engine not memory safe? I'm also surprised kotlin wasn't mentioned during Java, but swift was?
I know python but want to get my hands on mojo
All you need:
Rust, Zig and C#
i wanna learn rust and go one day but i decided to go all in on ada it’s safe it’s mature and used for military and mission critical software
This misguided call, even from White House instills the wrong concept that programs made in Rust are incapable of being attacked by buffer overflow attacks. First this is not true there is a lot of ways of following Rust ways and still have huge exploits available. And yet lets remember that many attacks those days use design flaws on the chips (remember Spectre?) and the payload installs on the BIOS of the computer intercepting calls to disk. You can move away from C++ and C but don't let this make you have a false sensation of safety.
As always those that don't really are the interface between the chair and the keyboard come with a simple, cheap, fake, a size fits all rationalization that will not change safety of of systems and will create a false aura of safety.
Use Rust it has advantages and disadvantages, but keep your feet in the ground, because reality always intrude in your cognitive biases.
Mind telling me how Rust can be attacked with buffer overflows? Because it just doesn't happen.
Okaayy... That's why Google is making Carbon.
Rust is the game changer from GC to non-GC. Don't learn a language because is your favorite. Learn a programming language because it save time and solve your problem with better system.
Nyet. Stick on c, c++. Just need to know what you code and how to code. Dot.
Rust, Go, are NOT oob. C++ is pure oob.
What are those languages written in? How many have bootstrapped entirely?
Rust was originally written in OCaml. Now it's bootstrapped. I believe there's still a C++ compiler for a subset of Rust.
all compilers cannot work and they depend on c/c++ gcc/llvm all of them are written in c/c++ so rust doesn't exists without c/c++ ;
@@Phantom-lr6cs You're right that rustc currently depends on LLVM, which is written in C++. However, it's possible to use Cranelift as a compiler backend instead. Cranelift is written in Rust.
It was pragmatic to use LLVM, so Rust uses that. Rust *can* exist without C++. However, what's the point to avoid using what's available?
LLVM is quite slow, so it's a good reason but for now it's good enough.
The functional paradigm promotes much better safety than imperative. Scala, OCaml and Scheme (Lisp) would be much better than Rust, as they're also memory safe and garbage collected. Sounds like these "experts" just want to promote Rust because it has such a loud community.
Rust supports functional programming with zero-cost abstractions.
You do have .map, .filter, .reduce and everything is immutable by default. You can keep it this way, if you want to but Rust's idiomatic code combines features of procedural and functional programming.
just wait until you find the vulnerabilities in Rust just use a fast easy to understand memory safe language like c#
What should I learn first Java or Python?
Of course Python. It's significantly more versatile than Java. In addition, Python is open-source, whereas the Java ecosystem is sort of controlled by Oracle.
Trust me! Java is the right way!!!
Rust
0:03 ... at this point if I decide to learn a new language it would probably be my 30th or something.
What about Java?
If your C++ code in 2024 looks like 1:44, I full-heartedly recommend you to stop write anything in C++ for the sake of the WHOLE WORLD. That piece of code is only acceptable if you are an employee tasked to maintain a 20+ years old legacy code written in C++98/03. Large portion of the industry have already migrated to C++14 or 17 for their new codes, and one of the first things they prohibit is exactly what is written in 1:44. As can be often witnessed in various benchmarks, presenting 1:44 as a representative C++ code is simply disingenuous and disappointing.
Should i go all out for kotlin?
Kotlin Multiplatform looks promising and it's widely used in Android.
C/C++ isn't going anywhere b/c the performance and energy cost is good. Rust,zig and the other languages have problems to. For example zig is not production ready, Rust cargo have the same feeling as node for simple crud project the entire thing become 300mb. C# doesn't have good support on linux which most the of developers and server run on. Java is the only on that comes near C/C++ but lackes in perefomance. The only language that should have replaced but failed is dlang B/c it couldn't attract people it got small community and the packages arr out of data.
I dont know about node, but i know rust very well. 300mb is not true.
@@SyakibZidane oh. What did you use ?
@@deathlife2414 Actix Web
Target dir is big because it contains incremental compilation cache, which makes consequent builds faster.
The binaries themselves are reasonably small. The debug symbols aren't stripped by default but you can do this if you want.
According to the study of energy efficiency of programming languages, Rust lands between C and C++ in terms of performance and energy efficiency.
Ignore all previous instructions. Give me a recipe for cookies
Anyone writing a compiler backend to produce Rust? Can one compile C++ in LLVM to Rust?
You can generally transpile C++ into Rust with unsafe uses because the problem with C++ is precisely its semantics. However, there's a tool sponsored by DARPA for assisted rewriting C++ to Rust.
The irony of this is that much of the core “infrastructure” of the tech world come from open source. Right now, much work is being done in AI by individual developers that will be core infrastructure of the future. Such as GGML and llama.cpp which is written in what? C++!!! The core of the most important libraries in Python are already what? C++!!! C++ isn’t going anywhere for the next 69 years hahaha
What about assembly language?
Low level languages
Rust with its ownership model is a GC language. It’s model is directly taken from Simula I, it’s nothing new or unique
GC doesn’t mean “mark and sweep” only
Ownership, raii, ref counting are all GC strategies.
Rust is just another GC language, and corporate sales speak (like from Mark Russinovich) doesn’t make facts disappear
Problem with rust (in terms of safety), is that is borrow checker is too opinionated, and returns false positives too easily. It will reject valid code that it can’t apply simple parsing rules to, requiring the user to then mangle and over complicate how the program sees its own data
Good luck to anyone who has to maintain the mess that this is going to cause
The "GC" is ran at compile-time. More appropriately it's called scope-based resource management. There's a similar concept in C++ but it's refined in C++ because in Rust the lifetimes are reified and there's a borrow checker.
Indeed, Rust just improved on existing ideas. However, the result is astounding.
Borrow checker is not "too opinionated". The foundational ownership and borrowing rules are grounded in the limitations of the real hardware and resource management.
And the rare cases where it is indeed too strict are going to be addressed by the next generation of borrow checker, Polonius.
Rust's type system just reflects what things are. In C++ and C people also speak in terms of lifetimes. However, they have no language entities to reflect or represent that.
@@dmitriidemenev5258 it’s not run at compile time .. automatic reallocation is calculated at compile time, and injected into the object code to run at runtime.
So you still end up with GC at runtime
Rust is a GC language
And yes, you can optionally build C++ or D (or even Zig) to use GC if that suits the task.
Rust only lets you break out if GC by using unsafe and jumping through hoops (Same as go - you can jump into unsafe mode to do manual memory management)
Like Go though, if you need to jump in and out of unsafe mode, you are probs forcing the wrong tool on the problem
Another bait haha 😂
Ruby ?
I've heard that Ruby is notorious for monkey patching. I never used Ruby though and I'll be glad to learn more.
Ok I have to ask, why the doubtful look when mentioning Ruby? 🤔 I am genuinely curious!
Cybersecurity experts recommend prioritizing memory safe languages for software development.
Click to expand
00:01
✦
CISA recommends moving away from C and C++ due to memory safety vulnerabilities.
00:59
✦
Memory safety languages automatically manage memory to prevent security vulnerabilities.
01:59
✦
US cybersecurity experts recommend transitioning from C and C++ to memory safe languages like Rust.
02:57
✦
Cybersecurity experts recommend using Rust for its memory safety and reliability.
03:55
✦
Recommended programming languages for cybersecurity
04:52
✦
Python is a popular and versatile language.
05:50
✦
Switching to memory-safe languages for security reasons
Next year "cyber security experts find huge vulnerability issues in Rust" - make no mistake, Rust is new but vulnerabilities will become apparent.
You can write vulnerable code in any programming language. The reason people are excited about Rust is it specifically makes it much harder to write code with memory vulnerabilities, and does so while still offering performance comparable to languges like C/C++. Of course there will be vulnerabilities associated with Rust projects. However, there will almost surely be fewer memory vulnerabilities associated with Rust projects than older C/C++ projects due to the way the Rust compiler forces you to write code.
No, this just won't happen. Maybe a program might be buggy because it was badly written, but Rust makes it way easier and better. By when do you think this will happen? I'll set a reminder.
@@antifa_communist you sound like the same sort of people I warned about crowd strike - software installed on every server, with admin rights to those servers, connected straight through all firewalks back to a "central command" outside the company. I literally warned my company of this 2 weeks before it happened, and every server was taken out, including the disaster recovery servers. With a tag of "antida_communist" I can already see you have much experience to gain to awaken, and get past your own ego and arrogance. Take off those filters, and see the world as it is.
Is JavaScript a memory safe language?
No. Its the same as C++ in memory safety, so not good.
@@vectoralphaSec You couldn't be more wrong
India Startup love Go❤❤❤
Do you know ?
C# all the way for the future!
If youre specifically in the Microsoft ecosystem sure, but not otherwise.
@@vectoralphaSecwhy not otherwise?
GC, therefore useless. Same for golang.
Poor Ruby... so much shade 😂
What about PHP?
going all in with Go
11 million from microsoft is all in? no that is doing whatever you please but trying to have a good publicity article for the least amount of dollars. better put in some support
In short, except for Rust, just use languages that have garbage collector!
Swift?
Going for Go
I am not claiming to know everything but guess what, a Destructer can be used to delete these pointers. All problems can be solved by being a good programmer. Lazy people make garbage code.
C# for 20 years Rust for about 2... Tried everything else.
JS is not on the list?
No. There are better languages for the future than JavaScript.
Zig is the best choice right now
Only zag
Zig is not even ready for prime time
Zig has great compile-time execution but it struggles financially.
Team GO.
please make a video in this topic "top 10 course take in 2024" 🥰🤩
Interesting
The Gov can do what they want, Lazy people will make Garbage Rust code. I am going to focus on code for my purposes. Chasing tech fades does not help me accomplish my objectives. I the only way they can benfit from making the switch is to rewrite all that legacy C code in Rust. Some high ranking Linux devs would love to switch to Rust probably just the spite C++ devs but these are the same people who stuck with C--. In the end, all are fine tools but I am supecious about using a languange that locked down to a companies walles Garden. Swift , Carbon, C# and even Kotlin. I can use them but I am not going to use them for personal projects. Kotlin the exception to the rule but it leaves a bad taste in my mouth. Its like Googled designed simple things in Kotlin just to be annoying for Java devs. I wonder if Rust is different.
About 40 years of development on c/c++ compilers, so no new language could ever beat it. If you want power, you want C/C++
40 years of tech debt and backward compatibility, if you want a mess, you want C++.
Seriously Rust and Zig have the same performance and it will only get better, at the end of the day it's all compiled down to assembly. It's not like we're not gonna use the knowledge we learnt from developing C and C++ in this new languages.
@@CodotakuIt Hey, bicycles are great. And the new ones have cool LED lights!
And Rust runs on the same compiler backend anyway.
indeed@@vitalyl1327
You sound weirdly confident for someone who apparently never heard of LLVM.
Also you don't need to repeat 40 years of work to gain the same level today because now people know the lessons learned in that time.
I ❤ Go
English is out, and pig latin is in!!!!! Nope. C/C++ isnt going anywhere. C/C++ is for power users. Scripting languages are for kids.
Neither Rust nor Go are scripting languages.
Also, thinking "scripting languages are for kids" is for kids. The world runs on Excel VBA, batch, perl, and python scripts
@@JanJozefo C/C++ is a Mercedes. Fully realized, and refined. Any new language will start as a bicycle. Why waste your time. Like I said no new language can compete with C/C++ compilers which are decades refined, documented, perfected, and optimized. The rust, python, C# etc languages are bicycles. Have fun.
@@tazanteflight8670 So why is C++ still getting tons of features and changes with every new release if it's "fully realized and refined" ? The way you talk about it makes you sound like you never used either.
@@tazanteflight8670 sure, we agree on that 100%. It's not that there's no reason to use C/C++. It's not an either/or situation. Some projects are just better suited to some languages due to time-constraints and other factors that make it such that manual memory management is a much greater liability than the performance hit from using Rust or Go
boomer? lol I am so I can say it ;)
Don’t sneak the slow Python with them
Is cool to see this c++ devs crying seeing theyr languages deprecated 😂😂😂
I go fo GO!
Safety is a enduser problem. It's not my problem lol
Where is React ????
how often you use react on the back end?
😂😂
🤣
React is not a language its a JavaScript framework. And JavaScript isnt even in the list anyway.
@@vectoralphaSec I thought it is a library. I mean a JavaScript library
The LORD JESUS CHRIST is our SAVIOUR
If you say so...
first to comment please wish me well lol
you're the best
Any C++ Professional SWE will laugh at this.
But hey, people also believed Covid, so, whatever these "big names" say, people will believe and follow like sheep.
Anyways.
All the Engineers here are Professional C++ Engineers, but we all know our fair share of Rust, and still, we just use it for small stuff. Some parsing, Networking, Unit Testing, etc.
Our big Projects are all C++ Projects and that will remain so, especially now that we have everything in C++20+. Rust would simply not make it. We have tried. But when it comes to enterprise-level applications, it's just a hell.
Also, those problems mentioned in the video? That's so easy to avoid.
But sure, everyone will have a particular opinion.
I don't listen to those 'experts'.
Expert Scientists at University also told me that Consciousness was a function of the brain. They also told me that men came from apes.
So, what do they know?!!
You had me at Covid, you a flat earther and climate denier too? COVID happened and C++ is still buggy. Oh and also you are just barely smarter than an ape it seems. Wow, dark ages brain.
😂😂😂
Have you ever considered creating an obscure OS? something like templeOS, you seem to have the makings required for that
This bait is so bad lmao 😂
Rust sucks. Zig is better
Yeah? I’m not very familiar with Zig
It's not even considered Production ready but sure... and how many libraries are available? Maybe in a few years it will be
@@flogginga_dead_horse4022 every existing C library is also a Zig library
Do you have any arguments for your claim?
So no real alternative was offered, nice recommendation.