Table of contents
1.
Introduction
2.
Assignment Expression
3.
Assigning to Constants
4.
Frequently Asked Questions
4.1.
What is Ruby?
4.2.
What is a global constant in Ruby?
4.3.
Why are Ruby classes constant, and why is it important?
4.4.
What does || mean in Ruby?
4.5.
In Ruby, what is a lambda?
5.
Conclusion
Last Updated: Mar 27, 2024
Easy

Assigning to Constants in Ruby

Author SAURABH ANAND
0 upvote
Career growth poll
Do you think IIT Guwahati certified course can help you in your career?

Introduction

Assignment in ruby stands for assigning values from right side operands to left side operands. In Ruby, there are various types of assignments possible. All possible assignments are listed below.

  • Assigning to Variables
  • Assigning to Constants
  • Assigning to Attributes and Array Elements
  • Abbreviated Assignment
  • Parallel Assignment


In this blog, we will discuss the concept of assignment and assigning to constants in Ruby. So, first, let’s get started with the introduction of an assignment expression.

Assignment Expression

A value for one or more lvalues is specified by an assignment expression. The term lvalue refers to something that can appear on the left side of an assignment operator. (Values on the righthand side of an assignment operator are frequently referred to as rvalues.)

In Ruby, lvalues are variables, constants, attributes, and array elements. The criteria and meaning of assignment expressions vary slightly for different types of lvalues, which are detailed in detail in this section.

In Ruby, assignment expressions can have three different forms.

  • Simple assignment: Simple assignment involves one lvalue, the = operator, and one rvalue. For example;
     
x = 13   # Set the lvalue x to the value 13
You can also try this code with Online Ruby Compiler
Run Code

 

  • Abbreviated assignment: An abbreviated assignment is a shorthand expression that updates the value of a variable by performing another operation (such as addition) on the variable's current value. Assignment operators like += and *=, which combine binary operators with an equal sign, are used in the abbreviated assignments. For example;
     
x += 2   # Set the lvalue x to the value x + 2
You can also try this code with Online Ruby Compiler
Run Code

 

  • Parallel assignment: Any assignment expression with more than one lvalue or more than one rvalue is considered a parallel assignment. For example;
     
x,y,z = 2,3,4    # Set x to 2, y to 3 and z to 4
You can also try this code with Online Ruby Compiler
Run Code

Assigning to Constants

Assigning to Constants is distinguished from variables such that their values are intended to remain constant during the execution of a program. As a result, there are some particular rules for assigning constants.

  • When you assign to a constant that already exists, Ruby issues a warning. However, Ruby does execute the assignment, implying that constants are not truly constant.
  • Within the body of a method, assignment to constants is not permitted. Ruby assumes that methods are meant to be called more than once; if you could assign to a constant in a method, that method would issue warnings after the first invocation. As a result, this is just not permitted.


Constants, unlike variables, do not exist until the Ruby interpreter performs the assignment statement. A non-evaluated expression, such as the one below, does not produce a constant. For example;

N = 10 if false

This means that a constant is never in an uninitialized state. If a constant exists, it has a value associated with it. A constant will only have the value nil if that is the value that was assigned to it.

# Ruby program to show the behaviour of constant.
# !/usr/bin/ruby

class Example
   V1 = 100
   V2 = 200
   def show
      puts "Value of 1st Constant is #{VAR1}"
      puts "Value of 2nd Constant is #{VAR2}"
   end
end

# Create Objects
object = Example.new()
object.show
You can also try this code with Online Ruby Compiler
Run Code

 

Output

Value of 1st Constant is 100
Value of 2nd Constant is 200

Frequently Asked Questions

What is Ruby?

Ruby is an open-source dynamic language with natural and easy-to-read/write syntax. Ruby is a careful balance language and a perfect blend of five different languages.

What is a global constant in Ruby?

The environment variable for the entire program is an example of a global constant. Let's look at some examples of Ruby constant lists: We'll look at constants defined at the top of the program and how to use them both inside and outside of it in this example.

Why are Ruby classes constant, and why is it important?

You're getting an " uninitialized constant " error because you most likely forgot to require a file or gem that defines the constant, you're getting an "uninitialized constant" error.

What does || mean in Ruby?

A conditional assignment operator is denoted by the symbol ||=. It functions similarly to =, with the exception that it does nothing if a variable has already been assigned.

In Ruby, what is a lambda?

A lambda is a Ruby object that is comparable to a proc. A lambda, unlike a proc, requires a fixed number of arguments to be supplied to it, and instead of returning immediately, it returns to its calling procedure.

Conclusion

In this article, we have discussed the concept of assignment and assigning to constants in Ruby. We started with the introduction of an assignment expression, Simple assignment, Abbreviated assignment, Parallel assignment, and finally concluded with the assigning to constants.

You can check out our blogs on the topics Assignment Operators in RubyParallel Assignment in Ruby, and Assignment in Ruby

Refer to our Guided Path on Coding Ninjas Studio to upskill yourself in Data Structures and AlgorithmsCompetitive ProgrammingJavaScriptSystem Design, and many more! If you want to test your capacity in coding, you may check out the mock test series and participate in the contests hosted on the Coding Ninjas Studio website.

Happy Learning!

Thank you image
Live masterclass