title: How to imitate lodash.set with Ramda
body: <p>I am learning Ramda and I am confused. I want to make a set function that works similar to the lodash.set function. However when I try the following on an path that exists in the object, it seems to work as intended, but when I use it to create a new path, it adds this weird array.</p>
  
  <pre><code>const R = require('ramda')
  
  const set = (object, path, value) =&gt; R.set(R.lensPath(path), value, object);
  
  const foo = {
    moo: {
      goo: 'goo'
    }
  }
  
  
  set(foo, ['moo', 'goo', 'boo'], 'roo'); // { moo: { goo: { '0': 'g', '1': 'o', '2': 'o', boo: 'roo' } } }
  </code></pre>
  
  <p>So the result is: // { moo: { goo: { '0': 'g', '1': 'o', '2': 'o', boo: 'roo' } } }</p>
  
  <p>When I expected it to be: // { moo: { goo: { boo: 'roo' } } }</p>
  
  <p>Why does it add these characters by index? How do I accomplish a lodash.set function with Ramda?</p>