Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
Rust Programming Articles
Page 2 of 3
How to Build a Machine Learning Model in Rust?
Machine learning (ML) has become one of the fastest-growing fields in technology, empowering systems to learn from data, adapt, and improve. While Python dominates this domain, other languages are beginning to gain traction due to their performance, safety, and concurrency features—one such language is Rust.Rust, known for its memory safety without needing a garbage collector, brings considerable benefits to machine learning, especially when building performant and safe systems. In this article, we'll explore how to build a simple machine learning model in Rust. Whether you’re a Rustacean or a beginner, this guide will provide step-by-step instructions on creating a basic ...
Read MoreDifference Between Golang and Rust
When it comes to system programming languages, Golang and Rust are two popular choices. Both languages are designed to provide a balance between performance, safety, and productivity. However, there are significant differences between them. In this article, we will discuss the main differences between Golang and Rust in a tabular way. Difference Between Golang and Rust Comparison Golang Rust Type of Language Statically Typed Language Statically Typed Language Syntax Similar to C Similar to C Memory Management Garbage collected Memory safe with ownership and borrowing Concurrency Model Goroutines and channels ...
Read MoreComments in Rust Programming
Comments in Rust are statements that are ignored by both the rust compiler and interpreter. They are mainly used for human understanding of the code.Generally, in programming, we write comments to explain the working of different functions or variables or methods to whosoever is reading our code.Comments enhance the code readability, especially when the identifiers in the code are not named properly.In Rust, there are multiple ways in which we can declare comments. Mainly these are −Single-line commentsMulti-line commentsDoc commentsIn this article, we will explore all the three comments.Single-Line commentSingle line comments in Rust are comments that extend up to ...
Read MoreUse Declarations in Rust Programming
Use Declarations in Rust are used to bind a full path to a new name. It can be very helpful in cases where the full path is a bit long to write and invoke.In normal cases, we were used to doing something like this:use crate::deeply::nested::{ my_function, AndATraitType }; fn main() { my_function(); }We invoked the use declaration function by the name of the function my_function. Use declaration also allows us to bind the full path to a new name of our choice.ExampleConsider the example shown below:// Bind the `deeply::nested::function` path to `my_function`. use deeply::nested::function as my_function; ...
Read MoreSuper and Self Keywords in Rust Programming
Whenever we want to remove the tedious long importing paths of functions that we want to invoke, either from the same function or from a different module, we can make use of the super and self keywords provided in Rust.These keywords help in removing the ambiguity when we want to access the items and also prevent unnecessary hardcoding of paths.ExampleConsider a simple example shown below:fn function() { println!("called `function()`"); } mod cool { pub fn function() { println!("called `cool::function()`"); } } mod my { fn function() { println!("called `my::function()`"); ...
Read MoreChannels in Rust Programming
Channels are a medium that allow communication to take place between two or more threads. Rust provides asynchronous channels that enable communication between threads.Channels in Rust allow a unidirectional flow of communication between two endpoints. These two endpoints are Sender and Receiver.ExampleConsider the example shown below −use std::sync::mpsc::{Sender, Receiver}; use std::sync::mpsc; use std::thread; static NTHREADS: i32 = 3; fn main() { let (tx, rx): (Sender, Receiver) = mpsc::channel(); let mut children = Vec::new(); for id in 0..NTHREADS { let thread_tx = tx.clone(); let child = thread::spawn(move || { ...
Read MoreStruct Visibility in Rust Programming
Structs in Rust contains an extra level of visibility. These can be modified by the developers as per his/her convenience.In a normal scenario, the visibility of the struct in Rust is private and it can be made public by making use of the pub modifier.It should be noted that this case of visibility only makes sense when we are trying to access the struct fields from outside the module, from where it is defined.When we are hiding the fields of the struct, we are simply trying to encapsulate the data.ExampleConsider the example shown below −mod my { // A ...
Read MoreResult Type in Rust Programming
There are two types of errors that occur in Rust, either a recoverable error or an unrecoverable error. We handle the unrecoverable errors with the help of panic!macro and the Result type along with others help in handling the recoverable errors.The Result type is a better version of the Option type which only describes the possible error instead of the possible absence.SignatureThe signature of Result Type is Result < T, E>and it can have only two outcomes.These are: Ok(T): An element T was found.Err(E): An error was found with an element E.Rust also provides different methods that we can associate with ...
Read MoreProgram arguments in Rust Programming
Taking care of arguments passed at the runtime is one of the key features of any programming language.In Rust, we access these arguments with the help of std::env::args, which returns an iterator that gives us a string for each passed argument.ExampleConsider the example shown below −use std::env; fn main() { let args: Vec = env::args().collect(); // The first argument is the path that was used to call the program. println!("My current directory path is {}.", args[0]); println!("I got {:?} arguments: {:?}.", args.len() - 1, &args[1..]); }We can pass arguments like this −./args 1 2 3 4 ...
Read MoreHashSet in Rust Programming
Rust also provides us with a HashSet data structure that is mainly used when we want to make sure that no duplicate values are present in our data structure.If we try to insert a new value into a HashSet that is already present in it, then the previous value gets overwritten by the new value that we insertedBesides the key features, a HashSet is also used to do the following operations −union − Extract all the unique elements in both sets.difference −G ets all the elements that are present in the first set, but not in the second.intersection − Gets ...
Read More