<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Digilent Blog</provider_name><provider_url>https://digilent.com/blog</provider_url><author_name>Josh</author_name><author_url>https://digilent.com/blog/author/josh-woldstad/</author_url><title>How Recursion Works: Advantages &amp; Disadvantages - Digilent Blog</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="VDU4dGWUU1"&gt;&lt;a href="https://digilent.com/blog/recursion/"&gt;How Recursion Works: Advantages &amp; Disadvantages&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://digilent.com/blog/recursion/embed/#?secret=VDU4dGWUU1" width="600" height="338" title="&#x201C;How Recursion Works: Advantages &amp; Disadvantages&#x201D; &#x2014; Digilent Blog" data-secret="VDU4dGWUU1" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script&gt;
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
//# sourceURL=https://digilent.com/blog/wp-includes/js/wp-embed.min.js
&lt;/script&gt;
</html><thumbnail_url>https://digilent.com/blog/wp-content/uploads/2015/01/factorial.png</thumbnail_url><thumbnail_width>296</thumbnail_width><thumbnail_height>146</thumbnail_height><description>Welcome back to the Digilent Blog! Today we're going to go over recursion! Recursion is when a function calls itself directly, or through another function. Sometimes we can't solve a problem using loops (iteration), so we have to use recursion. Recursion is slower than iteration, difficult to debug, and it uses up more of the stack. But recursion can also have simpler code, so in some cases, the benefits outweigh the problems.</description></oembed>
