An article that unburied an old hatchet - Rust versus C++ debates.
https://lucisqr.substack.com/p/why-i-think-c-is-still-a-very-attractive
#Rust
#CPP
https://lucisqr.substack.com/p/why-i-think-c-is-still-a-very-attractive
#Rust
#CPP
Substack
Why I think C++ is still a desirable coding platform compared to Rust
When a question is asked about comparing compiled languages like C++ and Rust, the typical generic answer is: “Both are compiled languages with no/minimal runtime that let you write whatever the mach…
Technologique
An article that unburied an old hatchet - Rust versus C++ debates. https://lucisqr.substack.com/p/why-i-think-c-is-still-a-very-attractive #Rust #CPP
And a good (and what's more important - fun) analysis with debriefing of this article, with pretty fair reasoning for both sides.
https://www.youtube.com/watch?v=Wz0H8HFkI9U
With funny takes and a good sense of humor (for ex. here 14:40 - it cracks me up! =)
Moral: Use what fits better for your needs and tasks - there is enough of engineering space for everyone!
For me, as I'm working on modern finances and cloud techs - I've made a choice already a way back before, many years ago.
This reminds me an old debates on what's better, faster and more secure - Borland's Turbo Pascal, Modula -2, then Delphi versus Borland C++ Builder and Visual Studio.
https://www.youtube.com/watch?v=Wz0H8HFkI9U
With funny takes and a good sense of humor (for ex. here 14:40 - it cracks me up! =)
Moral: Use what fits better for your needs and tasks - there is enough of engineering space for everyone!
For me, as I'm working on modern finances and cloud techs - I've made a choice already a way back before, many years ago.
This reminds me an old debates on what's better, faster and more secure - Borland's Turbo Pascal, Modula -2, then Delphi versus Borland C++ Builder and Visual Studio.
YouTube
Why i think C++ is better than rust
Recorded live on twitch, GET IN
https://twitch.tv/ThePrimeagen
Become a backend engineer. Its my favorite site
https://boot.dev?promo=PRIMEYT
This is also the best way to support me is to support yourself becoming a better backend engineer.
### Links…
https://twitch.tv/ThePrimeagen
Become a backend engineer. Its my favorite site
https://boot.dev?promo=PRIMEYT
This is also the best way to support me is to support yourself becoming a better backend engineer.
### Links…
And here are another articles by the author from this series with more deep takes and better reasoning in comparison apples to apples, i.e. Rust and C++:
https://lucisqr.substack.com/p/quants-use-rust-devs-use-c
https://lucisqr.substack.com/p/move-semantics-and-low-latency-programming
https://lucisqr.substack.com/p/the-c-technique-that-slashes-rusts
Overall, I prefer to use move semantics by default, with explicit ownership transfer, with explicit copies and cloning, with immutability and locality for everything by default, with lifetimes (for region based memory management, with exclusive RCs, rather than GCed memory) tied to local scopes, to ownership transfers and to borrowing by reference (either one mutable or many immutable) - all of this prevents of easy creation of whole class of issues and vulnerabilities related to operations with allocated memory, as dangling pointers, use after free, undefined behavior for dangling pointers and use after free, memory leaks (mostly, but not always, due to logical possible issues in code), shared mutable states and data races, especially in concurrent and multi-threaded code (search for fearless concurrency with Rust), and, what's mostly important, all of this in compile time, with strongly typed safety guarantees.
And many other modern programming things too - functional approach (first class functions, Fn, FnOnce, FnMut traits), Ord and Eq traits for ordering and equality checks for data types, iterators, generators and streams, pattern matching, futures and channels for asynchronous code with deferred computations, trait based ad-hoc polymorphism (with compile-time monomorphization) and generics (with even higher kinded types!), dyn traits for dynamic dispatching, as an exception, rather than the rule, and this fair as well for unsafe local blocks (which gives only reasonable type system relaxation, for only five options, needed for more deep systems development and optimizations, mainly raw pointers dereferencing , all options listed here https://doc.rust-lang.org/book/ch19-01-unsafe-rust.html, but unsafe mode inside particular local blocks not turns off borrow and ownership checker inside of unsafe blocks! only one owner allowed, with ownership transfer, with same rules for borrowing via references and for scope/ownership/borrowing based lifetimes!), and many many more wonderful things!
#Rust
#CPP
https://lucisqr.substack.com/p/quants-use-rust-devs-use-c
https://lucisqr.substack.com/p/move-semantics-and-low-latency-programming
https://lucisqr.substack.com/p/the-c-technique-that-slashes-rusts
Overall, I prefer to use move semantics by default, with explicit ownership transfer, with explicit copies and cloning, with immutability and locality for everything by default, with lifetimes (for region based memory management, with exclusive RCs, rather than GCed memory) tied to local scopes, to ownership transfers and to borrowing by reference (either one mutable or many immutable) - all of this prevents of easy creation of whole class of issues and vulnerabilities related to operations with allocated memory, as dangling pointers, use after free, undefined behavior for dangling pointers and use after free, memory leaks (mostly, but not always, due to logical possible issues in code), shared mutable states and data races, especially in concurrent and multi-threaded code (search for fearless concurrency with Rust), and, what's mostly important, all of this in compile time, with strongly typed safety guarantees.
And many other modern programming things too - functional approach (first class functions, Fn, FnOnce, FnMut traits), Ord and Eq traits for ordering and equality checks for data types, iterators, generators and streams, pattern matching, futures and channels for asynchronous code with deferred computations, trait based ad-hoc polymorphism (with compile-time monomorphization) and generics (with even higher kinded types!), dyn traits for dynamic dispatching, as an exception, rather than the rule, and this fair as well for unsafe local blocks (which gives only reasonable type system relaxation, for only five options, needed for more deep systems development and optimizations, mainly raw pointers dereferencing , all options listed here https://doc.rust-lang.org/book/ch19-01-unsafe-rust.html, but unsafe mode inside particular local blocks not turns off borrow and ownership checker inside of unsafe blocks! only one owner allowed, with ownership transfer, with same rules for borrowing via references and for scope/ownership/borrowing based lifetimes!), and many many more wonderful things!
#Rust
#CPP
Substack
Quants use Rust; Devs use C++
In the past few years, much has been talked about switching from C++ to Rust, particularly in the low-latency trading industry. This is the second article on that line. Value vs. Reference Semantics U…
SysOps and Linux distros for development.
Interesting question appeared recently.
How to make a local development environment more stable, rigid and more close to server environment.
I wouldn't talk about environment isolation via containers - it's a good practice, as well as reproducible builds. This can be found in this blog in above posts.
But when you need to have a pure system environment on a raw hardware, to install base packages for development (exact kernel for hardware support, desktop environment, libraries, shell, terminal, browser, editor, IDE, language server, programming language and its toolkit), and it's especially fair for package maintenance, development and testing on a real system.
I usually use two separate setups - for communication (Debian Sid/Unstable, mixing with packages from testing and stable branches, which works way more stable than Ubuntu and Arch, and Windows 11 with WSL2, with all kind of distros in WSL containers/VMs) and for deep development work (Debian, Gentoo, and Void).
I completely stopped using Arch, BTW. =)
Pacman is good, but overall weak package manager, by the set of operations you can perform in a system to make a rollbacks (in comparison to apt, yum/dnf, zypper).
Package maintainers usually not pointing out full dependencies and its required versions in pkgbuilds, even for popular packages (Firefox, for ex.)! Something always missing, and they not even extensively testing packages installation and how final app running and works.
Thus you can frequently find yourself in situation like, for example, when some web app required newer browser, you update browser (Firefox, Chromium, Brave) and it won't start, because some dependencies need updates, usually some libraries are outdated, and newer versions required. You update that deps and libraries. And it required other ones or broke other apps (when it shouldn't do that and should prevent such updates, 'cause others are dependant on these exact library versions). It's usually ended up with update of whole system frequently (the main idea of Arch - to be on an edge). Sometimes unsuccessful. And system became broken. And you'll spend a time to fix it.
So, pacman allowed installation of app that even won't start, with missing dependencies, without any notice for user, that deps are missing or incompatible, and thus required. And you install new app into incompatible environment without any notice, interruption and cancellation of installation. And it won't work properly then. And pacman not pulling these dependencies by itself with its installation for you.
Mainly this happen due to weak dependencies, versions and environment description in pkgbuilds, by package maintainers, and weak package testing practices in communities.
Also this happen due to global system wide state management and global dependencies - apps environment should be as local as possible and isolated, for every package dependencies, they shouldn't crossing with other apps and packages, and installations should be atomic, transactional, with easy rollbacks. This functional approach provided by NixOS and Nix package manager.
Rolling back to previous packages is also not simple - Arch Package Archive is a separate server, from where you need usually manually download and install previous package versions, and it's not integrated in pacman, like Debian different package branches into apt configuration and operations.
So, apt, yum/dnf, zypper are far more advanced package managers.
Thus, I decided not long ago to make a convergent environment for work and communications, and migrate all my work to NixOS, with declarative setup configurations, atomic transactional updates, and isolated environments for all apps and packages dependencies.
Interesting question appeared recently.
How to make a local development environment more stable, rigid and more close to server environment.
I wouldn't talk about environment isolation via containers - it's a good practice, as well as reproducible builds. This can be found in this blog in above posts.
But when you need to have a pure system environment on a raw hardware, to install base packages for development (exact kernel for hardware support, desktop environment, libraries, shell, terminal, browser, editor, IDE, language server, programming language and its toolkit), and it's especially fair for package maintenance, development and testing on a real system.
I usually use two separate setups - for communication (Debian Sid/Unstable, mixing with packages from testing and stable branches, which works way more stable than Ubuntu and Arch, and Windows 11 with WSL2, with all kind of distros in WSL containers/VMs) and for deep development work (Debian, Gentoo, and Void).
I completely stopped using Arch, BTW. =)
Pacman is good, but overall weak package manager, by the set of operations you can perform in a system to make a rollbacks (in comparison to apt, yum/dnf, zypper).
Package maintainers usually not pointing out full dependencies and its required versions in pkgbuilds, even for popular packages (Firefox, for ex.)! Something always missing, and they not even extensively testing packages installation and how final app running and works.
Thus you can frequently find yourself in situation like, for example, when some web app required newer browser, you update browser (Firefox, Chromium, Brave) and it won't start, because some dependencies need updates, usually some libraries are outdated, and newer versions required. You update that deps and libraries. And it required other ones or broke other apps (when it shouldn't do that and should prevent such updates, 'cause others are dependant on these exact library versions). It's usually ended up with update of whole system frequently (the main idea of Arch - to be on an edge). Sometimes unsuccessful. And system became broken. And you'll spend a time to fix it.
So, pacman allowed installation of app that even won't start, with missing dependencies, without any notice for user, that deps are missing or incompatible, and thus required. And you install new app into incompatible environment without any notice, interruption and cancellation of installation. And it won't work properly then. And pacman not pulling these dependencies by itself with its installation for you.
Mainly this happen due to weak dependencies, versions and environment description in pkgbuilds, by package maintainers, and weak package testing practices in communities.
Also this happen due to global system wide state management and global dependencies - apps environment should be as local as possible and isolated, for every package dependencies, they shouldn't crossing with other apps and packages, and installations should be atomic, transactional, with easy rollbacks. This functional approach provided by NixOS and Nix package manager.
Rolling back to previous packages is also not simple - Arch Package Archive is a separate server, from where you need usually manually download and install previous package versions, and it's not integrated in pacman, like Debian different package branches into apt configuration and operations.
So, apt, yum/dnf, zypper are far more advanced package managers.
Thus, I decided not long ago to make a convergent environment for work and communications, and migrate all my work to NixOS, with declarative setup configurations, atomic transactional updates, and isolated environments for all apps and packages dependencies.
Expansion of Rust language application in aerospace sphere.
Rust already widely applied for hard real-time systems - DAW (digital audio workstation), HFT (high frequency trading), industrial system, but also for automotive and aerospace vehicle systems, like autopilots, space orientation and telemetry. In such systems a stable latency and reaction time should be provided, which means every operation should take only exact amount of time.
And now the new hard real-time subsystem (with more wide abilities than Linux RT patch-set) for Linux, RROS, which working along with Linux kernel, is used for running real-time software for on-board systems on the new recently launched China satellite.
'Cause Rust gives a system access level to work with the hardware, same as C language provides, but also powerful yet simple abstractions and smart-pointers, as C++ language provides.
https://bupt-os.github.io/website/news/2023_12_9/satellite_launch/
https://github.com/BUPT-OS/RROS
https://github.com/BUPT-OS/RROS/tree/main/rust
Other post on this topic in my blog in Telegram:
https://www.tgoop.com/technologique/1540
https://www.tgoop.com/technologique/1512
https://www.tgoop.com/technologique/1524
#Rust
#Linux
#RTOS
#aerospace
#automotive
Rust already widely applied for hard real-time systems - DAW (digital audio workstation), HFT (high frequency trading), industrial system, but also for automotive and aerospace vehicle systems, like autopilots, space orientation and telemetry. In such systems a stable latency and reaction time should be provided, which means every operation should take only exact amount of time.
And now the new hard real-time subsystem (with more wide abilities than Linux RT patch-set) for Linux, RROS, which working along with Linux kernel, is used for running real-time software for on-board systems on the new recently launched China satellite.
'Cause Rust gives a system access level to work with the hardware, same as C language provides, but also powerful yet simple abstractions and smart-pointers, as C++ language provides.
https://bupt-os.github.io/website/news/2023_12_9/satellite_launch/
https://github.com/BUPT-OS/RROS
https://github.com/BUPT-OS/RROS/tree/main/rust
Other post on this topic in my blog in Telegram:
https://www.tgoop.com/technologique/1540
https://www.tgoop.com/technologique/1512
https://www.tgoop.com/technologique/1524
#Rust
#Linux
#RTOS
#aerospace
#automotive
RROS
The Tianyi-33 Satellite Equipped with RROS Successfully Entered Orbit.
At 7:39 AM on December 9th, the Zhuque-2 YAO-3 launch vehicle was successfully launched from the Jiuquan Satellite Launch Center in China.
One of the best explanation of the current AI space state (a state of the art) and upcoming (or already current) breakthrough in improvement of LLM with planning and self-learning (self-improvement, as an AlfaGo does) and (maybe) forming synthetic data sets by itself and for itself. Crazy stuff!!! Highly recommend to watch 'till the very end.
https://www.youtube.com/watch?v=Z6E41eXStsU
#AI
#AGI
#LLM
#Qstar
https://www.youtube.com/watch?v=Z6E41eXStsU
#AI
#AGI
#LLM
#Qstar
YouTube
What Is Q*? The Leaked AGI BREAKTHROUGH That Almost Killed OpenAI
Update: ROY-ders 🤣
In this video, I break down every piece of information we have about Q*, the revolutionary AGI breakthrough that has been leaked from OpenAI. Everyone in the AI community has been scrambling to figure out what it is, and I’ve collected…
In this video, I break down every piece of information we have about Q*, the revolutionary AGI breakthrough that has been leaked from OpenAI. Everyone in the AI community has been scrambling to figure out what it is, and I’ve collected…
And the mentioned lecture - an intro to LLMs by Andrej Karpathy.
https://www.youtube.com/watch?v=zjkBMFhNj_g
At the time of 38:02 the self-improvement extension to LLMs explained. It can be done by the automation of gathering and preparing synthetic data sets by the model itself (or agents) and by the usage of output of one model as an input for another model (self-improvement pipelining).
#AI
#AGI
#LLM
#Qstar
https://www.youtube.com/watch?v=zjkBMFhNj_g
At the time of 38:02 the self-improvement extension to LLMs explained. It can be done by the automation of gathering and preparing synthetic data sets by the model itself (or agents) and by the usage of output of one model as an input for another model (self-improvement pipelining).
#AI
#AGI
#LLM
#Qstar
YouTube
[1hr Talk] Intro to Large Language Models
This is a 1 hour general-audience introduction to Large Language Models: the core technical component behind systems like ChatGPT, Claude, and Bard. What they are, where they are headed, comparisons and analogies to present-day operating systems, and some…
Async functions and impl Trait in return position in traits.
Asynchronous functions and impl Trait (type which implements that particular trait) in return position for traits are finally stabilized and delivered in Rust stable branch! 🥳🎉🎊🍾
https://blog.rust-lang.org/2023/12/28/Rust-1.75.0.html
#Rust
#RustLang
Asynchronous functions and impl Trait (type which implements that particular trait) in return position for traits are finally stabilized and delivered in Rust stable branch! 🥳🎉🎊🍾
https://blog.rust-lang.org/2023/12/28/Rust-1.75.0.html
#Rust
#RustLang
blog.rust-lang.org
Announcing Rust 1.75.0 | Rust Blog
Empowering everyone to build reliable and efficient software.
A hard pill about everything around and related to Web3 and DeFi.
Highly advise you to watch this eye opening movie (or at least argumentative alternative view point), published a year ago.
https://youtu.be/ORdWE_ffirg
Everything begins from the investment funds (42:49), they've got mission, "to increase adoption of cryptocurrencies", "everything should be tokenized", and they spread out this will, selecting particular startups and technologies, but for what they need to "increase adoption and acceptance"? Who wrote their mission? Who gave the money for this mission? Start to digging in and you'll see how deep is the rabbit hole! 🕳️🐇
#Web3
#DeFi
Highly advise you to watch this eye opening movie (or at least argumentative alternative view point), published a year ago.
https://youtu.be/ORdWE_ffirg
Everything begins from the investment funds (42:49), they've got mission, "to increase adoption of cryptocurrencies", "everything should be tokenized", and they spread out this will, selecting particular startups and technologies, but for what they need to "increase adoption and acceptance"? Who wrote their mission? Who gave the money for this mission? Start to digging in and you'll see how deep is the rabbit hole! 🕳️🐇
#Web3
#DeFi
YouTube
Crypto: The World’s Greatest Scam.
Bitcoin to Blockchains, to NFTs, to Web 3.0... it's time to find out if it's really all the hype or just part of one of the greatest scams in human history.
******
► Become a Patron for behind the scenes, Q&A's, and editing tutorials: https://www.pat…
******
► Become a Patron for behind the scenes, Q&A's, and editing tutorials: https://www.pat…
The saddest news came from ETH Zürich on this New Year.
I was grew up learning and using Niklaus Wirth languages Pascal, Modula-2, Oberon, Oberon-2. The "Algorithms and data structures" by Nicklaus Wirth became my "always on table" book. Pascal, Modula-2 and Oberon/Oberon-2 was the best school of structured programming. Now these conceptions of structured programming, interfaces, modules are continuing in Rust, Golang and in many modern computer programming languages. It's really hard to re-estimate how influencing were Niklaus Wirth languages and programming approaches on computer languages landscape and these languages still remain the state of the art in programming.
Rest in peace professor Nicklaus Wirth, you and your impact on computer science always be remembered!
https://ethz.ch/en/news-and-events/eth-news/news/2024/01/computer-pioneer-niklaus-wirth-has-died.html
#Pascal
#Modula
#Oberon
I was grew up learning and using Niklaus Wirth languages Pascal, Modula-2, Oberon, Oberon-2. The "Algorithms and data structures" by Nicklaus Wirth became my "always on table" book. Pascal, Modula-2 and Oberon/Oberon-2 was the best school of structured programming. Now these conceptions of structured programming, interfaces, modules are continuing in Rust, Golang and in many modern computer programming languages. It's really hard to re-estimate how influencing were Niklaus Wirth languages and programming approaches on computer languages landscape and these languages still remain the state of the art in programming.
Rest in peace professor Nicklaus Wirth, you and your impact on computer science always be remembered!
https://ethz.ch/en/news-and-events/eth-news/news/2024/01/computer-pioneer-niklaus-wirth-has-died.html
#Pascal
#Modula
#Oberon
ethz.ch
Computer pioneer Niklaus Wirth has died
That's the real thing guys! A better code editor, faster and even more responsive than Sublime Text, better than VSCode. Best for #Rust developers. Moreover, it's written in Rust! Check it out! I was pretty skeptical, but it turns out to worth tried out something new, revisiting my tools for daily routines working on code and change something for the better comfort, productivity, and a better developer experience!
https://github.com/zed-industries/zed
https://zed.dev
BTW: Zed is made by the creator and developers from the Atom team. They know how to deliver best developer experience.
And all that responsiveness are delivered by new UI framework, which built like a game engine, to utilize hardware video acceleration for UI rendering to the fullest!
And when you have more responsive interaction with UI - the work became more joyful! =)
PS: Yep, I'm still using VSCode+RLS/Rust-Analyzer as my daily driver for production development, Sublime Text for quickly edit small files or large files with regexps and multiple cursors (power cursors plugin - still missing point in vim/nvim, although same is reachable with macroses) and vim/nvim/tmux for work with remote servers with restricted environment through ssh.
https://github.com/zed-industries/zed
https://zed.dev
BTW: Zed is made by the creator and developers from the Atom team. They know how to deliver best developer experience.
And all that responsiveness are delivered by new UI framework, which built like a game engine, to utilize hardware video acceleration for UI rendering to the fullest!
And when you have more responsive interaction with UI - the work became more joyful! =)
PS: Yep, I'm still using VSCode+RLS/Rust-Analyzer as my daily driver for production development, Sublime Text for quickly edit small files or large files with regexps and multiple cursors (power cursors plugin - still missing point in vim/nvim, although same is reachable with macroses) and vim/nvim/tmux for work with remote servers with restricted environment through ssh.
GitHub
GitHub - zed-industries/zed: Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators…
Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter. - zed-industries/zed
One of the good applications of Zero Knowledge Proofs - ZKP based proof of identity usage for electronic passports and proof of personhood identification.
https://ethresear.ch/t/zero-knowledge-proofs-of-identity-using-electronic-passports/19263
#zkp
#web3
https://ethresear.ch/t/zero-knowledge-proofs-of-identity-using-electronic-passports/19263
#zkp
#web3
Ethereum Research
Zero-knowledge proofs of identity using electronic passports
Zero-knowledge proofs of identity using electronic passports Many applications need to verify their user’s identity online, whether it is nationality, age, or simply uniqueness. Today, this is hard. They are stuck between shady heuristics like tracking…
Finally! Qualcomm delivered Snapdragon X series ARM CPUs for mobile PCs. And looks like it's serious - PC era on Intel and software era for x86-64 is over (7:48), undoubtedly.
https://youtu.be/5poVsIeq3TM
#CPU
#Qualcomm
#Snapdragon
https://youtu.be/5poVsIeq3TM
#CPU
#Qualcomm
#Snapdragon
YouTube
The PC Reborn – Introducing Snapdragon X Plus
The PC Reborn: Introducing Snapdragon X Plus, the newest platform within the Snapdragon X series.
Equipped with cutting-edge technologies to deliver powerful performance, long battery life, lightning-fast wireless connectivity, and exciting new AI features…
Equipped with cutting-edge technologies to deliver powerful performance, long battery life, lightning-fast wireless connectivity, and exciting new AI features…
Technologique
Finally! Qualcomm delivered Snapdragon X series ARM CPUs for mobile PCs. And looks like it's serious - PC era on Intel and software era for x86-64 is over (7:48), undoubtedly. https://youtu.be/5poVsIeq3TM #CPU #Qualcomm #Snapdragon
The new Qualcomm Snapdragon X Elite and X Plus chips already supported by Linux kernel, Debian and Fedora distros, the work on CPU support was performed before official release of these chips, many thanks to the Linaro efforts for made such meaningful contribution and brings support of new ARM chips to the Linux world! This will be the huge shifting and game changer in PC platforms!
https://www.youtube.com/watch?v=rEaGyCAS9fY
#CPU
#Linux
#Qualcomm
#Snapdragon
https://www.youtube.com/watch?v=rEaGyCAS9fY
#CPU
#Linux
#Qualcomm
#Snapdragon
YouTube
Linux on Snapdragon X Elite Laptop with Tim Benton at the Linaro booth at Embedded World 2024 #ew24
At the Linaro booth during Embedded World 2024, Tim Benton, Vice President of Engineering at Linaro, discussed the integration of Linux with Snapdragon X1 Elite laptops. This collaboration between Linaro and Qualcomm has resulted in a full Linux experience…
Interview with Chris Lattner about the Mojo language.
(The Mojo hype is real! It's a trending technology targeted AI space - the development of AI engines and models for the real world.)
https://youtu.be/JRcXUuQYR90
#Mojo
(The Mojo hype is real! It's a trending technology targeted AI space - the development of AI engines and models for the real world.)
https://youtu.be/JRcXUuQYR90
#Mojo
YouTube
Mojo Lang - Tomorrow's High Performance Python? (with Chris Lattner)
Mojo is the latest language from the creator of Swift and LLVM. It’s an attempt to take some of the best techniques from CPU/GPU-level programming and package them up in a Python-compatible syntax.
In this episode we explore why the Mojo programming language…
In this episode we explore why the Mojo programming language…
RustRover IDE has been released by JetBrains!
And that's a big deal! 'Cause it's free for non-commercial use (i.e. for open source and personal projects)!
https://blog.jetbrains.com/rust/2024/05/21/rustrover-is-released-and-includes-a-free-non-commercial-option/
#Rust
#RustLang
And that's a big deal! 'Cause it's free for non-commercial use (i.e. for open source and personal projects)!
https://blog.jetbrains.com/rust/2024/05/21/rustrover-is-released-and-includes-a-free-non-commercial-option/
#Rust
#RustLang
The JetBrains Blog
RustRover Is Released and Includes a Free Non-Commercial Option | The RustRover Blog
We’re excited to announce the general availability of RustRover, the powerhouse IDE for Rust developers!
How Mojo speeds up computations so tremendously - from its creator, Chris Lattner:
https://youtu.be/SEwTjZvy8vw
#Mojo
#MojoLang
https://youtu.be/SEwTjZvy8vw
#Mojo
#MojoLang
YouTube
2023 LLVM Dev Mtg - Mojo 🔥: A system programming language for heterogenous computing
2023 LLVM Developers' Meeting
https://llvm.org/devmtg/2023-10
------
Mojo 🔥: A system programming language for heterogenous computing
Speaker: Abdul Dakkak, Chris Lattner, Jeff Niu
------
Slides: https://llvm.org/devmtg/2023-10/slides/keynote/Mojo.pdf
-…
https://llvm.org/devmtg/2023-10
------
Mojo 🔥: A system programming language for heterogenous computing
Speaker: Abdul Dakkak, Chris Lattner, Jeff Niu
------
Slides: https://llvm.org/devmtg/2023-10/slides/keynote/Mojo.pdf
-…
A really good and deep (on compiler and dataflow level) explanation from Chris Lattner, author of Mojo, Swift and LLVM, about move semantics, ownership model, borrowing and lifetimes, on example and in comparison of Mojo, Rust, and C++ approaches to that conceptions. Must watch!
https://www.youtube.com/watch?v=9ag0fPMmYPQ
#Mojo
#MojoLang
#Rust
#RustLang
https://www.youtube.com/watch?v=9ag0fPMmYPQ
#Mojo
#MojoLang
#Rust
#RustLang
YouTube
Mojo🔥: a deep dive on ownership with Chris Lattner
Learn everything you need to know about ownership in Mojo, a deep dive with Modular CEO Chris Lattner
If you have any questions make sure to join our friendly discord community: https://modul.ar/discord
If you're ready to get started with Mojo, check out…
If you have any questions make sure to join our friendly discord community: https://modul.ar/discord
If you're ready to get started with Mojo, check out…
https://security.googleblog.com/2024/09/eliminating-memory-safety-vulnerabilities-Android.html
Cool stuff!
Whole class of vulnerabilities (and performance improvements!) have been eliminated just thanks to Rust type safe programming approach and type safety in memory management, according to its substructual affine&linear type-system for managing the ownership and borrowing of references and pointers to code and data in memory and analysing lifetimes (NLL) for every call stack statically during compilation on a LLVM's IR/MIR codeflow/dataflow level.
#Rust
Cool stuff!
Whole class of vulnerabilities (and performance improvements!) have been eliminated just thanks to Rust type safe programming approach and type safety in memory management, according to its substructual affine&linear type-system for managing the ownership and borrowing of references and pointers to code and data in memory and analysing lifetimes (NLL) for every call stack statically during compilation on a LLVM's IR/MIR codeflow/dataflow level.
#Rust
Google Online Security Blog
Eliminating Memory Safety Vulnerabilities at the Source
Posted by Jeff Vander Stoep - Android team, and Alex Rebert - Security Foundations Memory safety vulnerabilities remain a pervasive threa...