<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">I experienced learning Miranda after
      having learned >30 other languages of various types (none
      functional) as a sort of somewhat agreeable brain-damage. I can
      trace my loss of tolerance for gratuitous complexity to the moment
      when I realised that I could turn my formal specification for a
      text editor (expressed in Miranda) into a running text editor with
      the addition of <20 lines of code.<br>
      <br>
      - Raz<br>
      <br>
      <hr size="2" width="100%"><br>
      On 18/03/17 13:29, Tomislav Bozic wrote:<br>
    </div>
    <blockquote
      cite="mid:e0225e19-ec2a-da1b-533f-70c9d949fff8@progsoc.org"
      type="cite">Hi!
      <br>
      <br>
      Last Tuesday, having developed a nascent desire to broaden my
      horizons, I attended an introductory talk on Scala. It was an
      interesting enough talk. The speaker demonstrated how one could
      become productive with the language almost right away, even if one
      was not familiar with the functional paradigm, that is to say, one
      can program in an imperative style in Scala before moving up to
      its functional features when one is ready to do so. Most of the
      stuff relating to 'monads' and 'implicits' went largely over my
      head. Nonetheless, it has provided a springboard for further
      exploration of Scala.
      <br>
      <br>
      The thing that interested me the most from the meetup, however,
      was the Q&A session, where an audience member regaled his
      experience about learning programming languages, which to me was
      somewhat surprising and unorthodox.
      <br>
      <br>
      For you see, he learned Haskell first(!) during his high school
      years. Then, when he went to uni, he learned Java, which he found
      to be a bit of a struggle, since he had to adjust to a totally
      different way of thinking (sound familiar?). He said something
      along the lines of: with imperative languages such as Java, the
      programmer is required to keep track of state (of variables and
      whathaveyou) in their head, whereas functional languages, which
      are supposed to be stateless, do not have such a requirement...and
      that threw him off.
      <br>
      <br>
      From this, one could conclude that functional languages aren't
      necessarily harder than imperative languages to learn, they just
      require you to think differently.
      <br>
      <br>
      So I'm wondering if this rings true to you.
      <br>
      <br>
      Also, has anyone else here learned how to program in a functional
      language before touching a more 'traditional' imperative
      language[1]?
      <br>
      <br>
      Tom
      <br>
      <br>
      P.S. I should probably go to more of these meetups, if for no
      other reason than to come up with things to talk about...
      <br>
      <br>
      ---
      <br>
      <br>
      [Subject:] Kudos to anyone who recognises the allusion in the
      subject of this email.
      <br>
      <br>
      [1] or, as I call it, learning to fly before learning to walk.
      <br>
      <br>
      _______________________________________________
      <br>
      Progsoc mailing list
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:Progsoc@progsoc.org">Progsoc@progsoc.org</a>
      <br>
      <a class="moz-txt-link-freetext" href="http://progsoc.org/cgi-bin/mailman/listinfo/progsoc">http://progsoc.org/cgi-bin/mailman/listinfo/progsoc</a>
      <br>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>