{"id":2506,"date":"2021-08-21T15:44:56","date_gmt":"2021-08-21T10:14:56","guid":{"rendered":"https:\/\/www.rangakrish.com\/?p=2506"},"modified":"2021-08-21T15:44:56","modified_gmt":"2021-08-21T10:14:56","slug":"loop-command-in-ring-programming-language","status":"publish","type":"post","link":"https:\/\/www.rangakrish.com\/index.php\/2021\/08\/21\/loop-command-in-ring-programming-language\/","title":{"rendered":"&#8220;Loop&#8221; Command in Ring Programming Language"},"content":{"rendered":"<p>In my last <a href=\"https:\/\/www.rangakrish.com\/index.php\/2021\/08\/07\/first-encounter-with-the-ring-programming-language\/\" target=\"_blank\" rel=\"noopener\"><em><strong>article<\/strong><\/em><\/a>, I had written about how easy it is to execute <em><strong>Ring<\/strong><\/em> code from within <em><strong>C\/C++<\/strong><\/em>.<\/p>\n<p>Today&#8217;s article takes a look at the <em><strong>&#8220;Loop&#8221;<\/strong><\/em> command. This command is very similar to <em><strong>&#8220;continue&#8221;<\/strong><\/em> in many languages such as <em><strong>C++, Java, Python<\/strong><\/em>. etc. It is used to skip the rest of the statements inside a loop.<\/p>\n<p>Consider the <em><strong>Java<\/strong><\/em> code shown below:<\/p>\n<figure id=\"attachment_2507\" aria-describedby=\"caption-attachment-2507\" style=\"width: 500px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javacode.jpg?ssl=1\"><img data-recalc-dims=\"1\" fetchpriority=\"high\" decoding=\"async\" data-attachment-id=\"2507\" data-permalink=\"https:\/\/www.rangakrish.com\/index.php\/2021\/08\/21\/loop-command-in-ring-programming-language\/javacode\/\" data-orig-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javacode.jpg\" data-orig-size=\"552,337\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;Admin&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1629556215&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"&amp;#8220;Continue&amp;#8221; in Java\" data-image-description=\"&lt;p&gt;&amp;#8220;Continue&amp;#8221; in Java&lt;\/p&gt;\n\" data-image-caption=\"&lt;p&gt;&amp;#8220;Continue&amp;#8221; in Java&lt;\/p&gt;\n\" data-large-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javacode.jpg\" class=\"wp-image-2507\" src=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javacode.jpg?resize=500%2C305&#038;ssl=1\" alt=\"&quot;Continue&quot; in Java\" width=\"500\" height=\"305\" srcset=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javacode.jpg?resize=300%2C183&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javacode.jpg?w=552&amp;ssl=1 552w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><\/a><figcaption id=\"caption-attachment-2507\" class=\"wp-caption-text\"><strong>&#8220;Continue&#8221; in Java<\/strong><\/figcaption><\/figure>\n<p>When you execute this code, this is what you get:<\/p>\n<figure id=\"attachment_2508\" aria-describedby=\"caption-attachment-2508\" style=\"width: 500px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput.jpg?ssl=1\"><img data-recalc-dims=\"1\" decoding=\"async\" data-attachment-id=\"2508\" data-permalink=\"https:\/\/www.rangakrish.com\/index.php\/2021\/08\/21\/loop-command-in-ring-programming-language\/javaoutput\/\" data-orig-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput.jpg\" data-orig-size=\"1243,146\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;Admin&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Program Output\" data-image-description=\"&lt;p&gt;Program Output&lt;\/p&gt;\n\" data-image-caption=\"&lt;p&gt;Program Output&lt;\/p&gt;\n\" data-large-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput-1024x120.jpg\" class=\"wp-image-2508\" src=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput.jpg?resize=500%2C59&#038;ssl=1\" alt=\"Program Output\" width=\"500\" height=\"59\" srcset=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput.jpg?resize=300%2C35&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput.jpg?resize=1024%2C120&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput.jpg?resize=768%2C90&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/javaoutput.jpg?w=1243&amp;ssl=1 1243w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><\/a><figcaption id=\"caption-attachment-2508\" class=\"wp-caption-text\"><strong>Program Output<\/strong><\/figcaption><\/figure>\n<p>What is interesting about the <em><strong>Ring<\/strong><\/em> language is that the <em><strong>&#8220;loop&#8221;<\/strong><\/em> command can optionally take an integer expression to apply the <em><strong>&#8220;continue&#8221;<\/strong><\/em> semantics to even enclosing outer loops!<span class=\"Apple-converted-space\">\u00a0<\/span><\/p>\n<p>Below is a <em><strong>Ring<\/strong><\/em> program to illustrate this idea. The image shows the<em><strong> Ring &#8220;Notepad&#8221;<\/strong><\/em>, an IDE that comes with <em><strong>Ring<\/strong><\/em>. The LHS contains the source code and the RHS shows the output.<\/p>\n<figure id=\"attachment_2509\" aria-describedby=\"caption-attachment-2509\" style=\"width: 500px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg?ssl=1\"><img data-recalc-dims=\"1\" decoding=\"async\" data-attachment-id=\"2509\" data-permalink=\"https:\/\/www.rangakrish.com\/index.php\/2021\/08\/21\/loop-command-in-ring-programming-language\/one\/\" data-orig-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg\" data-orig-size=\"1758,1257\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;Admin&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1629555026&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Loop &lt;1&gt;\" data-image-description=\"&lt;p&gt;Loop &lt;1&gt;&lt;\/p&gt;\n\" data-image-caption=\"&lt;p&gt;Loop &lt;1&gt;&lt;\/p&gt;\n\" data-large-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one-1024x732.jpg\" class=\"wp-image-2509\" src=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg?resize=500%2C358&#038;ssl=1\" alt=\"Loop &lt;1&gt;\" width=\"500\" height=\"358\" srcset=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg?resize=300%2C215&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg?resize=1024%2C732&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg?resize=768%2C549&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg?resize=1536%2C1098&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/one.jpg?w=1758&amp;ssl=1 1758w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><\/a><figcaption id=\"caption-attachment-2509\" class=\"wp-caption-text\"><strong>Loop &lt;1&gt;<\/strong><\/figcaption><\/figure>\n<p>By the way, I want to point out another <em><strong>uncommon<\/strong><\/em> feature of <em><strong>Ring<\/strong><\/em>, namely the ability to change the built-in language keywords. In the above example, I have renamed <em><strong>&#8220;loop&#8221;<\/strong><\/em> to <em><strong>&#8220;continue&#8221;<\/strong><\/em> to be in sync with other languages.<span class=\"Apple-converted-space\">\u00a0<\/span><\/p>\n<p>The code has two loops, one nested inside the other. <em><strong>&#8220;continue&#8221;<\/strong><\/em> (or <em><strong>&#8220;loop&#8221;<\/strong><\/em>) is followed by a variable, whose value is defined outside the loops. It can be either 1 or 2. In this case, it is initialized with 1. Because of this, <em><strong>&#8220;continue&#8221;<\/strong><\/em> applies to the <em><strong>innermost<\/strong><\/em> loop, the same behaviour as in other languages. You can check the output. It is worth noting that the <em><strong>&#8220;loop&#8221;<\/strong><\/em> command, when not followed by an integer expression, assumes a value of 1, and hence applies to the <em><strong>innermost<\/strong><\/em>\u00a0loop.<\/p>\n<p>What happens if I change the variable <em><strong>&#8220;count&#8221;<\/strong><\/em> to 2? Here is the code and the corresponding output:<\/p>\n<figure id=\"attachment_2510\" aria-describedby=\"caption-attachment-2510\" style=\"width: 500px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"2510\" data-permalink=\"https:\/\/www.rangakrish.com\/index.php\/2021\/08\/21\/loop-command-in-ring-programming-language\/two\/\" data-orig-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg\" data-orig-size=\"1758,1257\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;Admin&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1629555075&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Loop &lt;2&gt;\" data-image-description=\"&lt;p&gt;Loop &lt;2&gt;&lt;\/p&gt;\n\" data-image-caption=\"&lt;p&gt;Loop &lt;2&gt;&lt;\/p&gt;\n\" data-large-file=\"https:\/\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two-1024x732.jpg\" class=\"wp-image-2510\" src=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg?resize=500%2C358&#038;ssl=1\" alt=\"Loop &lt;2&gt;\" width=\"500\" height=\"358\" srcset=\"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg?resize=300%2C215&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg?resize=1024%2C732&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg?resize=768%2C549&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg?resize=1536%2C1098&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/two.jpg?w=1758&amp;ssl=1 1758w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><\/a><figcaption id=\"caption-attachment-2510\" class=\"wp-caption-text\"><strong>Loop &lt;2&gt;<\/strong><\/figcaption><\/figure>\n<p>This is interesting, isn&#8217;t it? It is as if we had another<em><strong> &#8220;continue&#8221;<\/strong><\/em> statement in the outer loop.<\/p>\n<p>Of course, whether or not this is a good programming practice is beyond the scope of today&#8217;s discussion. I am sure there are pros and cons, and a good programmer uses every language construct judiciously.<\/p>\n<p>Here is the <em><strong>Ring<\/strong><\/em> example <a href=\"http:\/\/www.rangakrish.com\/downloads\/First.ring\" target=\"_blank\" rel=\"noopener\"><em><strong>source code<\/strong><\/em><\/a>.<\/p>\n<p>Have a nice weekend!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In my last article, I had written about how easy it is to execute Ring code from within C\/C++. Today&#8217;s article takes a look at the &#8220;Loop&#8221; command. This command is very similar to &#8220;continue&#8221; in many languages such as C++, Java, Python. etc. It is used to skip the rest of the statements inside [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[17,289],"tags":[290,288],"class_list":["post-2506","post","type-post","status-publish","format-standard","hentry","category-programming","category-ring-language","tag-loop-construct","tag-ring-programming-language"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9OLnF-Eq","jetpack-related-posts":[{"id":2516,"url":"https:\/\/www.rangakrish.com\/index.php\/2021\/09\/04\/ring-language-dynamic-behavior-of-classes-and-objects\/","url_meta":{"origin":2506,"position":0},"title":"Ring Language: Dynamic Behavior of Classes and Objects","author":"admin","date":"September 4, 2021","format":false,"excerpt":"We have been exploring the Ring Programming Language\u00a0in the last two articles.\u00a0Ring is a dynamic programming language with many interesting features. In today's article, let us try to understand how this dynamic behavior is reflected in Classes and Objects. In Ring, we can define classes at runtime. One way to\u2026","rel":"","context":"In &quot;Programming&quot;","block_context":{"text":"Programming","link":"https:\/\/www.rangakrish.com\/index.php\/category\/programming\/"},"img":{"alt_text":"Dynamic Class Creation","src":"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/09\/image1-300x146.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":2496,"url":"https:\/\/www.rangakrish.com\/index.php\/2021\/08\/07\/first-encounter-with-the-ring-programming-language\/","url_meta":{"origin":2506,"position":1},"title":"First Encounter with the Ring Programming Language","author":"admin","date":"August 7, 2021","format":false,"excerpt":"The Ring Programming Language, designed by Mahmoud Fayed,\u00a0 has been around since 2016. I came to know of it quite accidentally two weeks ago when I received a promotional email from Apress about their book \"Beginning Ring Programming\" by Mansour Ayouni, published in 2020. I immediately did a google search\u2026","rel":"","context":"In &quot;C++&quot;","block_context":{"text":"C++","link":"https:\/\/www.rangakrish.com\/index.php\/category\/c\/"},"img":{"alt_text":"Ring Installation Directory","src":"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/08\/directory-300x155.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":3312,"url":"https:\/\/www.rangakrish.com\/index.php\/2024\/01\/28\/the-hy-programming-language\/","url_meta":{"origin":2506,"position":2},"title":"The Hy Programming Language","author":"admin","date":"January 28, 2024","format":false,"excerpt":"In an earlier article\u00a0I had explained how to execute Python code from within Common Lisp using \u201cCLPython\u201d package. In contrast to that approach, \u201cHy\u201d\u00a0is a Lisp-style language (not compatible with Common Lisp) that is embedded in Python and hence provides seamless interoperability with Python code. Installation is straightforward (it is\u2026","rel":"","context":"In &quot;Hy Language&quot;","block_context":{"text":"Hy Language","link":"https:\/\/www.rangakrish.com\/index.php\/category\/hy-language\/"},"img":{"alt_text":"Hy REPL","src":"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2024\/01\/console-300x148.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":293,"url":"https:\/\/www.rangakrish.com\/index.php\/2016\/08\/07\/is-deriving-from-a-concrete-class-bad\/","url_meta":{"origin":2506,"position":3},"title":"Is Deriving from a Concrete Class Bad?","author":"admin","date":"August 7, 2016","format":false,"excerpt":"In my first post on Julia, I noted that the language does not allow deriving from a concrete (i.e., non-abstract) class. It definitely came as a surprise because in most OO languages (C++, Java, Scala, C#, etc.) such a restriction does not exist. It is true that when you design\u2026","rel":"","context":"In &quot;Julia&quot;","block_context":{"text":"Julia","link":"https:\/\/www.rangakrish.com\/index.php\/category\/julia\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2645,"url":"https:\/\/www.rangakrish.com\/index.php\/2021\/12\/25\/calling-lisp-functions-from-d-language\/","url_meta":{"origin":2506,"position":4},"title":"Calling Lisp Functions from D Language","author":"admin","date":"December 25, 2021","format":false,"excerpt":"After exploring \"newLisp\" in the past few posts, I would like to start looking at the \"D Programming Language\"\u00a0(DLang). DLang\u00a0has been around since 2001. It was originally created by Walter Bright and later Andrei Alexandrescu joined the team in 2007. The main inspiration for DLang was C++, although it uses\u2026","rel":"","context":"In &quot;D Language&quot;","block_context":{"text":"D Language","link":"https:\/\/www.rangakrish.com\/index.php\/category\/d-language\/"},"img":{"alt_text":"Lisp Function Called from D","src":"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/12\/Lisp-300x107.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/12\/Lisp-300x107.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.rangakrish.com\/wp-content\/uploads\/2021\/12\/Lisp-300x107.jpg?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":2927,"url":"https:\/\/www.rangakrish.com\/index.php\/2022\/10\/20\/why-learn-lisp\/","url_meta":{"origin":2506,"position":5},"title":"Why Learn Lisp?","author":"admin","date":"October 20, 2022","format":false,"excerpt":"In the last article, I had shared my views on why programmers should learn Prolog, preferably as the first language. What language should one learn next? I strongly pitch for Lisp, to be precise, \u201cCommon Lisp\u201d. Lisp happens to be the second oldest (1958) programming language, only after Fortran (1957)!\u2026","rel":"","context":"In &quot;LISP&quot;","block_context":{"text":"LISP","link":"https:\/\/www.rangakrish.com\/index.php\/category\/lisp\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/posts\/2506","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/comments?post=2506"}],"version-history":[{"count":0,"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/posts\/2506\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/media?parent=2506"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/categories?post=2506"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rangakrish.com\/index.php\/wp-json\/wp\/v2\/tags?post=2506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}