title: Functions that takes 3 Strings, where the first is part of the 3rd , and changes the 1st string in the 3rd with the second string
body: <p>I need to write a Haskell function, which takes 3 strings as input, where the 1st string is part of the 3rd string and substitutes the first string with the second one.</p>
  
  <p>I've tried using recursion for that, but it seems that I didn't set my base cases properly and also receive" signature  lacks accompanying binding error" ( I am completely new to Haskell)</p>
  
  <pre><code>change:: String -&gt; String -&gt; String -&gt; String
  change [] [] [] = []
  change [] ys zs = ys
  change xs [] zs = zs
  change xs ys [] = []
  change (x:xs) (y:ys) (z:zs) =  change xs ys zs
  </code></pre>
  
  <p>code here</p>
  
  <p>The function output should be for example:
  change "Hello" "Goodbye" "Hello class" 
  "Goodbye Class"</p>