Lexical Structure in Ruby
Like Human Languages, Computer languages also follow a lexical structure. A source code of the ruby program consists of tokens. While parsing any program, the ruby-interpreter parses the program as a sequence of these tokens. Tokens in ruby include literal, punctuation, comments, identifiers, and keywords. This article introduces you to one type of token, i.e., Comments in ruby. Tokens also include essential information about the characters that comprise the tokens and the whitespace that separates the tokens.
Comments in Ruby
Commenting marks content in your program that you want the interpreter to ignore. Comments in ruby help programmers increase the code readability. Comments in ruby work as notes or alongside extra information on what that particular section of code does?. Commenting is not only good practice but is essential when working for an organisation.
Comments in ruby can be of several types:
- Single line comments in ruby
- Multi-Level / Block Level comments in ruby
-
Documentation Comments in ruby
Now down the section, we will understand single-line and multi-line comments in ruby in brief with example.
Single line comments in Ruby
Anything begins with a # character in comments in Ruby and continues till the end of the Line. The Ruby interpreter ignores any text which follows a “ # ” character but does not ignore the newline character, which is meaningful whitespace and may serve as a statement terminator. If a “ # ” character appears within a string or regular expression literal in ruby, then it is simply part of that string or regular expression and does not consider a comment:
x = "#This is a string with a # character" # This is a comment
y = /#This is a regular expression/ # This is another comment
# And this is also a comment
You can also try this code with Online Ruby Compiler
Run Code
We could also use a single Line comment marker to mark multi-line comments, but it's not a good practice. “ # ” could be used as multiline comments in ruby by writing simply by beginning each line with a “ # ” character, as shown in the example.
# This represents the first line.
# This is the second Line.
# This is the third Line.
You can also try this code with Online Ruby Compiler
Run Code
We will discuss embedded documents or multiline comments in the next section
Multi-Line Comments in Ruby or Embedded Documents
Multiline comments in ruby, also known as an embedded document. Multiline comments in ruby start on a line that begins with “=begin” and go on till (and include) a line that begins “=end”. If we wrote any text after “=begin” and before “=end” is part of the comment. The extra text must be separated from the “=begin” and “=end” by at least one space. Embedded documents are a convenient way to comment out long blocks of code without prefixing each line with a “#” character, as seen in the previous section.
=begin
This text is a
Part of Multiline comments in ruby
Any code here is a comment
Ruby interpreter will ignore any text written here
=end
You can also try this code with Online Ruby Compiler
Run Code
We must ensure that “=” signs are the first characters of each line unless the embedded document will not work. Look into the below program to get clarity on this mistake:
# =begin
We begin the comment from here, but it is now a comment since the first character is a #; any text behind # is considered a comment.
The code that goes here is no longer a comment
# =end
You can also try this code with Online Ruby Compiler
Run Code
Embedded documents, as goes by their name, can include long blocks of documentation within a program. Embedded documents are planned to be used by some postprocessing tool run over the Ruby source code. It is typical to follow “=begin” with an identifier indicating the tool the comment is intended for.
Documentation Comments in Ruby
We can have API documentation as specially formatted comments in ruby that precede method, class, and module definitions. We can browse through this documentation using the RI tool. To extract documentation comments from the ruby source and to format them as HTML or prepare them for display by RI, we use the rdoc tool to extract them.
Explain that documentation of the rdoc tool is beyond the scope of this article; You could look into the file lib/rdoc/README in the Ruby source code for more details. Documentation comments in ruby should immediately come before the class, module, or any method whose API we document. Documentation comments in ruby are usually written as multiline comments, each line beginning with #. Still, they could also be written as the embedded documents explained above, which start =begin rdoc.
Look for the below comment program in ruby to demonstrate the essential formatting elements of the markup grammar used in Ruby’s documentation comments.
Code
#
# Rdoc comments use a simple markup grammar.
#
# They mark separate paragraphs with a blank line.
#
# = Headings
#
# All Headings in the document must begin with an equal sign
#
# == Sub-Headings
# For using Sub-Headings use double equal sign.The line above produces a subheading.
# === Sub-Sub-Heading
# And so on.
#
# = Examples
#
#
# = For using Lists and Fonts
#
# Any List Items that begin with * or - is idicating a fonts with punctuation:
# * _italic_ or Used for creating multi-word italic
# * *bold* or Used for creating multi-word bold
# * +code+ or Used for creating multi-word code
#
# 1. Any Number list must begin with numbers.
# 99. Any number will be acceptable; numbers need not have to be sequential.
# 1. We cannot make nested lists.
#
# For making description list each terms are bracketed:
# [item 1] Description for item 1
# [item 2] Description for item 2
#
You can also try this code with Online Ruby Compiler
Run Code
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.
Ruby is said to be a combination of which five languages?
Ruby, an open-source dynamic language, is a perfect blend of five different languages (Perl, Smalltalk, Eiffel, Ada, and Lisp).
What are single-line comments in ruby?
Any line of code that begins with a # character is a single-line comment in ruby. And each single line comment continues till the end of that Line. The Ruby interpreter ignores any text which follows a # character.
What are block-level / Multi-line comments in ruby?
Multiline comments in ruby are also called embedded documents. It starts from a line that begins with “=begin” and goes on till (and includes) a line that begins “=end”.
Is Ruby Case Sensitive?
Ruby is a case-sensitive language, which means lowercase identifiers in ruby are different from uppercase identifiers. E.g. Like_This is entirely different from LIKE_THIS. Similarly, Start is different from START.
Conclusion
In this article, we have studied Comments in Ruby in detail and briefly explored how one can use them to make code more readable.
Also, visit our Guided Path in Coding Ninjas Studio to learn about Ruby. If you are preparing for an interview, visit our Interview Experience Section and interview bundle for placement preparations. Upskill yourself in Ruby on Rails, Backend Web Technologies, Hadoop, SQL, MongoDB, Data Structures and Algorithms, JavaScript, System Design, and much more!.
To learn more, refer to Operational Databases, Non- relational databases, MongoDB, Top-100-SQL-problems, interview-experience, Introduction to ruby on rails, Directory Structure in Ruby, Ruby on Rails, Ruby vs Python. You can also refer to the Official Ruby, Ruby, Official Documentation, Ruby FAQ, Ruby Koans, Ruby Doc, Why Ruby?
We expect that this article must have helped you enhance your knowledge on the topic of Ruby. Please upvote our blogs if you find them engaging and helpful!
We wish you all the best for your future adventures.
Happy Coding!!!