module Intro where import Question intro = do h2 $ text "Introduction" p <#>This is the first assignment of the course Introduction to Functional Programming. The purpose is for you to read and work with the document at the terminal. Tutors will be available, but you are supposed to work independently in pairs. Do ask a tutor as soon as you get stuck; there is no point in aimless guessing if you don't understand your task. In particular you should ask a tutor if you believe you're doing as you're told in this document, but keep getting error messages that you don't understand. It is impossible to discuss all the errors one can make; make sure to get help so you can move on! p <#>If one of you is computer literate and the other a beginner, let the novice do the typing and clicking. You won't learn by just sitting and watching! p <#>On the other hand, it is likely that in many cases you will be able to do things by copying the instructions given, without understanding "how they work". This is intentional; the idea is for you to acquaint yourselves with the program we're going to use during the course. Further explanations will be given during the coming weeks. p <#>It's a good idea to keep the material from the first lecture at hand while working with this document. If you haven't already got it, it's available on the homepage of this course. Compare the exercises here with the contents of the lecture. p <#>The idea is for you to work through the material during a four hour session. Don't worry if you can't finish everything within four hours, but do as much as you can. The most important part of the work is to answer the frequently occuring questions that have the following appearance: ul $ do <#>The tasks usually involve doing something at the computer, after doing some thinking. All questions come with a proposed solution, which is brought to view by clicking the answer button. Do this after you've tried to answer the question or performed the task. But isn't it quicker to just skip the thinking part and check out the answer right away? .?> p <#>Yes, it is quicker, but one also learns a lot less. All previous experience shows that it isn't enough to look at solutions even if one understands them. In order to learn, one has to actively try to solve a problem. If you really have tried, with no success, then you can take a peak at the solution. p <#>Note that some of the answers include follow-up questions, so always read the answers.