korisnik: lozinka:
Naslovnica Pretraživanje AAA
IZBORNIK PREDMETA
 
GLAVNI IZBORNIK
 
 
PROGRAMIRANJE U HASKELLU
Šifra: 127252
ECTS: 4
Nositelji: doc. dr. sc. Jan Šnajder
Izvođači: doc. dr. sc. Jan Šnajder - Laboratorijske vježbe
Prijava ispita: Studomat
Engleski jezik:

1,1,1

Svi elementi nastave na predmetu provode se na engleskom jeziku. Ova razina uključuje i predmete s više nastavnih grupa (u hrvatskoj grupi nastava je isključivo na hrvatskom jeziku, a u engleskoj grupi isključivo na engleskom jeziku).
OBAVIJESTI
Objavljeno: 08.02.2016. u 20:58

The results for HA5 are finally uploaded on Ferko. I am very sorry for the delay. It is entirely my fault it was not here last week, and should have been much sooner.

 

All of the scores will be uploaded on Ferko soon(-ish), but if you are uncertain if you passed, you can send me an e-mail to find out your score.

 

As promised, the entirely optional HA6 is finally up. If you feel like it, you can solve it anywhere in the next few weeks and send it to me if you want feedback. Of course, it will not at all factor into the score.

 

The scores for the Christmas extra HA are sadly still not done, but we do know the winner - Domagoj Alagic, with a baffling 49/50 tasks solved. Congratulations!

 

Finally, thank you all for your participation. We didn't manage to do half the things we planned, but we hope you enjoyed the course and you learned something. If you want to help make it better for future generations, feel free to apply to serve as a TA next year. We always need more people to do things better and faster.

Luka Skukan
Objavljeno: 20.01.2016. u 21:31

The project demonstrations will take place on January 27th, 18:00-21:00, in room D272. If no member of your team can make it at that time, please notify us ASAP!

The demonstrations will consist of your showing one or more of the teaching assistants your code and how it works and answering some questions, as well as possibly making minor modifications to your code. You do not need to prepare a presentation.

To make it easier for everybody, we have divided the demonstrations into three slots, each lasting one hour. Seven teams are assigned to each slot. If you are not on the list, complain loudly. You are free to swap slots amongst yourselves without notifying us, as long as the number of teams per slot remains constant. If you cannot find anyone to swap slots with you, please come at your assigned time. The slots were fairly assigned using a pseudo-random shuffle.

 

18:00 - 19:00

  • Tokić
  • Radonić
  • Floreani, Mihaljević
  • Stanković
  • Begušić
  • Radaković, Rotim
  • Hadžiegrić, Hollos, Ambrošić

19:00 - 20:00

  • Marović
  • Gradečak, Grbac
  • Maček
  • Sarić, Lozić, Petričević
  • Banek
  • Pikulicki, Marciniak, Adamczyk
  • Bulota, Juknevicius, Petraitis

20:00 - 21:00

  • Ratković, Pavić
  • Molla, Navarro
  • Bradac
  • Mikulić
  • Džidić
  • Alagić, Kontrec
  • Papež, Vlašić

Please note that the lists are unordered.

Luka Skukan
Objavljeno: 20.01.2016. u 21:11
Uređeno: 29.01.2016. u 07:25
Final course questionnaire

Please fill in the final course questionnaire and let us know what you think about the course.  Your opinion matters! Help us improve this course.

Jan Šnajder
Objavljeno: 19.01.2016. u 13:14
Tech Talk by Jonn Mostovoy: On...

Join us on Tuesday, Jan 26 at 18:15, at UNIZG FER, lecture room D272, for a "Programming in Haskell" tech talk:

On (Im-)possibility of Monad Composition

by Jonn Mostovoy

While programming in Haskell, often, we have no choice but to use monads. In this lecture we will illustrate impossibility of monad composition, introduce the notion of Monad Transformers and learn about Free Monads, van Laarhoven Free Monad. We will support the theory with practical examples.

Jonn Mostovoy is a functional geek in love with everything typed and distributed. Jonn is a co-founder of serokell.io.

Jan Šnajder
Objavljeno: 27.12.2015. u 17:44

We have made the fifth homework assignment available in the file repository. It is due on Thursday, January 7, at 17:00. You are also required to submit all the in-class exercises from lecture 6 onwards (6, 7, 8 and 9). Please concatenate all the exercise solutions into a single file called exercises.hs.

For all questions and discussion, please use the Google group.

Luka Skukan
Objavljeno: 27.12.2015. u 15:46

We have published a special Christmas homework assignment, available in the sidebar. Note that this homework assignment is completely optional and is a pass/fail assignment, yielding no points. However, there are certain benefits to solving it:

  • Solving this homework assignment makes up for one failed HA, past or future*,
  • It will be used to resolve ties in the final ranking at the end of the course,
  • The best few (2-3) solutions will be rewarded with material prizes, the exact nature of which is yet to be determined.

The assignment is due on January 7th, 2016, at 23:59. It will be submitted on Ferko, as usual. Please follow the naming conventions and type signatures outlined in the file and comment your solutions.

Note that this does not mean you can just not submit a homework assignment at all or submit an empty file. However, you can submit a HA with less than 50% solved and still pass the course.

Luka Skukan
Objavljeno: 23.12.2015. u 21:54

At long last, the result for Homework Assignment 4 are in. We are very sorry for the long delay. You are free to consider their arrival a holiday miracle.

 

As always, contact your reviewer if you have questions or complaints. Homework Assignment 5 should be made available and in a day or two (and you'll have until the next lecture to solve it). 

Luka Skukan
Objavljeno: 20.12.2015. u 21:25

Due to a sufficient diversity in your applications for desired modules, all the teams get to implement their first choice of modules. This means that you implement the first n + 1 modules as ordered in the e-mail you sent me, where n is the number of people in your team.

 

32 people have applied to partake in the project, grouped in 18 different teams. Ranked by number of different implementations, in descending order, the modules are:

  • User Management
  • Assignments and Submissions
  • E-Mail Notifications
  • Statistics
  • Reviews

Each module will be implemented by at least six different teams. The user management module will be implemented by as many as 16 teams. No custom module ideas were sent in.

 

In case you forgot to apply for the project, but still wish to do it, please send me an e-mail as described in the previous notification as soon as possible!

 

Happy holidays and have fun coding!

Luka Skukan
Objavljeno: 12.12.2015. u 19:48
Uređeno: 16.12.2015. u 19:04

The project assignment has been made available in the file repository. Please read through it carefully.

 

As stated, you will be doing your project assignments either alone, or in groups of up to three people. For a group of size n, you have to implement n + 1 modules. You will report the composition of your team and the order of preference for module implementations. We will try to assign you modules according to your preference, but will ensure that every module is implemented by at least three teams. When assigning the modules, ties in preference will be resolved in order of preference submission (i.e. the sooner you apply, the better chance you have of getting the modules you want).

 

The project demonstrations will most likely be in the evening of Tuesday, Janury 26th. We will keep you posted.

 

You have until Sunday, December 20th, at noon, (moved from Saturday) to send us an e-mail containing the following:

  • The names of the team members
  • The module names sorted by preference, in descending order (first module is the most preferred one)
  • Optionally, if you are suggesting your own module, a brief description

Only one person in each team needs to send such an e-mail.

You will be notified of the tasks assigned to you in the evening of the same day, or in the morning of the following day, at the latest.

 

If you have any questions or comments, please direct them at the Google Group.

Luka Skukan
Objavljeno: 12.12.2015. u 19:33

The results of the midterm exam are in and available on Ferko. Of the 42 people who took the midterm exam, 37 passed. If you have any questions or complaints, contact your reviewer. Due to my mistake when entering the results, please contact me with such questions (at luka.skukan@fer.hr) if it says your reviewer is Antonio.

 

We hope that those who did not manage to pass the midterm exam will not be discouraged from Haskell and functional programming. Please let us know what you think of the midterm exam (both the concept and the execution) at the end of the semester, in the second student questionnaire.

Luka Skukan
Objavljeno: 01.12.2015. u 09:43
Tech Talk by Sebastian Funk from Jane...

Join us on Monday, 7 December at 17:15, at UNIZG FER, lecture room B2, for a "Programming in Haskell" tech talk:

Why Functional Programming Doesn't Matter

by Sebastian Funk from Jane Street Capital

Jane Street has been writing production software in OCaml, a functional language, for over a decade with billions of dollars worth of financial transactions flow through our functions and modules every day.

This talk will summarise our view of the relative importance of the features of OCaml and other similar languages. In particular, we will contrast with Hughes' seminal paper, "Why Functional Programming Matters". While we don't disagree with Hughes' view that statically typed functional languages are unusually effective tools, we'll argue that an expressive static type system, which Hughes doesn't mention, should be near the top of the list, and purity, which many think of as the defining aspect of functional programming, is near the bottom.

Sebastian joined Jane Street after graduating from the University of Cambridge with a special focus on type theory and functional programming. He has since been working on building trading systems in OCaml, making every-day use of the tools presented in this talk.

Jan Šnajder
Objavljeno: 27.11.2015. u 15:39
Uređeno: 27.11.2015. u 15:40
Tech Talk by Jonn Mostovoy: Purely...

Join us on Thursday, 3 December at 18:15, at UNIZG FER, lecture room D272, for a "Programming in Haskell" tech talk:

Purely Functional Dependency Management (for Haskell)

by Jonn Mostovoy

In this lecture we will talk about the issue of dependency management in build systems and consider current proceedings to address those issues. We will use Haskell infrastructure as a motivating example and cover cabal-install, stackage and haskellPackages from Nix to illustrate evolution of available tools.

Jonn Mostovoy is a functional geek in love with everything typed and distributed. Jonn is a co-founder of serokell.io.

Jan Šnajder
Objavljeno: 24.11.2015. u 14:04
Tech Talk by Ante Kegalj:...

Join us on Thursday, 26 November at 18:15, at UNIZG FER, lecture room D272, for a "Programming in Haskell" tech talk:

Introduction to Developing Web Applications with Yesod

by Ante Kegalj

Yesod is the most popular Haskell web framework. It uses Haskell type system to enforce correctness (no broken links, compile-time checked HTML), it is modular (composable components) and fast. We will create a simple web application and discuss pros and cons of using Yesod in the industry. The talk is open for everybody.

Ante (Ante :: Fer -> Industry -> Java -> Haskell) has been working in the industry for almost 5 years now. He was fortunate enough to work at a few big Java projects at the start of his career. That was enough to fall in love with Haskell.

Jan Šnajder
Objavljeno: 24.11.2015. u 12:41
Uređeno: 24.11.2015. u 13:47
Tech Talks

Brace yourself, we'll have three tech talks during the next three weeks!

  • Thu, 26 Nov at 18:15 in lecture room D272:

    Ante Kegalj: Introduction to Developing Web Applications with Yesod

  • Thu, 3 Dec at 18:15 in lecture room D272:

    Jonn Mostovoy (serokell.io): Purely Functional Dependency Management (for Haskell)

  • Mon, 7 Dec at 17:15 in lecture room B2:

    Sebastian Funk (Jane Street): Why Functional Programming Doesn't Matter

The talks are highly recommended for PUH students, and also open for all people interested in functional programming. Please spread the word!

Jan Šnajder
Objavljeno: 22.11.2015. u 23:13

The reviews for Homework Assignment 3 have been uploaded to Ferko/sent via e-mail. As always, if you have questions or complaints, contact you reviewer via e-mail. Our e-mai adresses are listed in the introductory lecture slides.

Luka Skukan
Objavljeno: 22.11.2015. u 22:49
Uređeno: 07.12.2015. u 14:04

As announced in class, the midterm exam will take place on Tuesday, December 8th, at 19:00 (not 15 minutes later), and will last for one hour. It will take place in room D272. You will do the midterm exam on your own computer, and may freely access the internet, save for communication with one another or third parties.

The exam will consist of three tasks (and possibly an optional extra task), similar to the homework assignments in format, but easier. It will cover topics from the first seven weeks of class and the first four homework assignments. To pass the exam, you need to get half the points and have at least one task solved entirely correctly, i.e. have full points for that task.

If you are unable to take the exam at that time, please make contact as soon as possible!

Luka Skukan
Objavljeno: 21.11.2015. u 11:24

You have been assigned your peer review pairs for Homework Assignment 4 (save for a few students who submitted through e-mail). You can access it on Ferko, on the bottom of the right-hand side menu, under the name Course Work Reviewing (or Recenziranje Radova in Croatian). The deadline for doing the reviews is Thursday, December 10, at 17:00. This is due to the midterms, deadlines in the future will not be so far removed from the moment you receive the notification.

You are each to review the homework assignments of two other people. You are only grading their homework assignment solutions, not their exercises solutions (although you are free to look at them). Construct the grade (from 1 to 10) by any means you see fit. Keep in mind that only 5 and above are considered passing grades. Don't be afraid to be harsh if you see serious mistakes, no one will fail the course solely due to peer review results.

Luka Skukan
Objavljeno: 13.11.2015. u 12:06
Student Questionnaire

Please fill in the student questionnaire (available through FERweb) and let us know what you think about the course. Your opinion matters! Help us improve this course.

Jan Šnajder
Objavljeno: 12.11.2015. u 18:47

Everyone should have Ferko access now! Therefore, please submit your homework assignments on Ferko from now on, if you haven't thus far. Furthermore, this means that we'll finally start doing peer reviews from HA4 onwards (as Ferko was a requirement for this). If you don't know your credentials (e.g. are a former student or not from FER) please contact doc. dr. sc. Marko Čupić to have them assigned.

Luka Skukan
Objavljeno: 10.11.2015. u 18:55

We've posted the fourth homework assignment. This assignment is due on Tuesday, November 17, at 17:00. 

You are also required to solve and submit all of the in-class exercises from lecture 05, including those solved in class.

As a reminder, we are having office hours tomorrow (Wednesday) and you are free to come by if you have any questions, including questions about HA4.

Luka Skukan
Objavljeno: 08.11.2015. u 14:22

We have posted the results of our reviews for the second homework assignment. If you have submitted your homework assignment via Ferko, you can see the review there. Otherwise, the review has been sent to you via e-mail, in reply to your submission message. Please note that the results will be visible under in-time submission even if you used late submission (on Ferko).

If you have questions or comments about the grading process, please contact your reviewer via e-mail (as listed in the introductory lesson). If your homework has not been graded,inform us ASAP.

Luka Skukan
Objavljeno: 06.11.2015. u 11:15

We will be holding office hours next Wednesday, November 11, 16:00-17:00, in room D337. Feel free to come and ask about anything PUH- or Haskell-related. If you feel you're struggling with certain concepts, or would maybe like to know more about some topics we've covered, come and ask about it!

As before, if you have questions, but are unable to attend, you may instead ask them on the Google Group or via email.

Luka Skukan
Objavljeno: 31.10.2015. u 17:28

We've just posted Lecture 4 and Lecture 5. You can also get it from the file repository located in the right pane of this web site.

Please take some time to go through the lecture and experiment with the code a bit. Should you have any questions, we'd be happy to answer them on our Google group.

In the next class, we'll finish up Lecture 5 and then look at higher order functions. To prepare, you may (but need not to) read Chapter 6 of LYH (http://learnyouahaskell.com/higher-order-functions)

Jan Šnajder
Objavljeno: 31.10.2015. u 13:41
Uređeno: 31.10.2015. u 14:32

We've posted the third homework assignment. This assignment is due on Friday, November 6, at 17:00. 

You are also required to solve and submit all of the in-class exercises from lecture 04, including those solved in class. The lecture will be made available in the file repository shortly. 

You will note that this assignment deviates from the rest - you have to submit three files - Homework.hs, Exercises.hs and CSVUtils.hs

Luka Skukan
Objavljeno: 29.10.2015. u 20:01

We have posted the results of our reviews for the first homework assignment. If you have submitted your homework assignment via Ferko, you can see the review there. Otherwise, the review has been sent to you via e-mail, in reply to your submission message. If you have questions or comments about the grading process, please contact your reviewer via e-mail (as listed in the introductory lesson). If your homework has not been graded, inform us ASAP.

Luka Skukan
Objavljeno: 28.10.2015. u 11:49

For those of you who are struggling with the third task second homework assignment and have not seen the discussion on the Google Group, we have added a helper function for matrix exponentiation. The function is called applyN and can be used to exponentiate the matrix like so:

 

A^4 == applyN (multMatrices A) 3 A

 

The given code takes the operation of multiplying a given matrix by matrix A and performs the operation 3 times on matrix A. You can derive a general matrix exponentiation operation from there. In case you are still having difficulties, do feel free to ask questions via e-mail.

Luka Skukan
Objavljeno: 24.10.2015. u 11:34

We've just posted Lecture 3. You can also get it from the file repository located in the right pane of this web site.

Please take some time to go through the lecture and experiment with the code a bit.

In the next lecture, we'll take a look at additional Haskell syntax for functions: pattern matching and local definitions. To prepare, you may (but need not to) read Chapter 4 of LYH (http://learnyouahaskell.com/syntax-in-functions). We'll also take a look at how to set up a Haskell project and package it using the so-called Cabal.

Jan Šnajder
Objavljeno: 24.10.2015. u 11:32

We'll have another (and last!) extra class on Tuesday, Oct 27, at 18:15. After that, we're contuining with a more relaxed (one session per week) pace. As this is an extra slot, attendance will not be recorded. Nonetheless, you are strongly encouraged to come because the topic we'll be looking is important (full syntax of functions), and because PUH is fun.

Jan Šnajder
Objavljeno: 23.10.2015. u 12:31

We've posted the second homework assignment. This assignment is due on Thursday, October 29, at 17:00. 

You are also required to solve and submit all of the in-class exercises from lecture 02 (and only lecture 02), including those solved in class. The lecture is available in the file repository. 

We will keep you updated regarding the Ferko situation.

Please keep your exercises and homework assignment solutions in two separate files (one for the exercises, one for the homework assignment). We would also like to ask you to comment your code. It will make our job easier and will result in you getting the results sooner.

Luka Skukan
Objavljeno: 21.10.2015. u 18:30
Uređeno: 21.10.2015. u 18:34

We are experiencing some difficulties with the Ferko system. Some of you have been granted Ferko accounts and access to PUH, but others have not. For those that have, please submit your homeworks on Ferko. You use the same credentials you would use for fer.unizg.hr (FERWeb). If you are a former student whose credentials have expired, or do not know your password, please contact doc. dr. sc. Marko Čupić to have a new password generated.

Due to these difficulties, the submission deadline for Homework Assignment 1 has now been extended by 24 hours, until Friday, October 23, at 17:00. If we still do not manage to add you to Ferko or the course by then, please submit your exercise via e-mail. The deadline still applies, of course.

Please follow the same guidelines for both Ferko and e-mail submissions - submit a single archive (zip, rar, .tar.gz or 7z) containing two files - Exercises.hs and Homework.hs.

Unfortunately, this likely means we will have to skip the peer review process for the first homework assignment, as it is currently tied to Ferko.

Luka Skukan
Objavljeno: 20.10.2015. u 21:32

We will be holding office hours tomorrow (Wednesday), October 21, 16:30 - 17:30, in room D337, since a few students expressed interest. If there is need, the time allotted might be extended to 18:00. During this period, you may come to room D337 with any PUH- or Haskell-related questions.

We will however not solve your homework assignment for you, but we can help you with advice or hints.

If you have questions, but are unable to attend, you may instead ask them on the Google Group or via email.

Please note that this does not mean that we will hold office hours every Wednesday. They are on demand and might not be held every week.

Luka Skukan
Objavljeno: 16.10.2015. u 12:50
Uređeno: 16.10.2015. u 12:53

We've posted the first homework assignment. This assignment is due on Thursday, October 22, at 17:00. 

You are also required to solve and submit all of the in-class exercises from lecture 01, including those solved during the lecture. The lecture is available in the file repository. 

 

Submission on Ferko will be made available to you in time and submission instructions will be provided in a separate announcement.

 

Please keep your exercises and homework assignment solutions in two separate files (one for the exercises, one for the homework assignment). We would also like to ask you to comment your code. It will make our job easier and will result in you getting the results sooner.

Luka Skukan
Objavljeno: 16.10.2015. u 10:27

We've just posted Lecture 1 and Lecture 2 (the latter we haven't finished yet). You can also get them from the file repository located in the right pane of this web site.

Please take some time to go through the lecture and experiment with the code a bit.

On Tuesday, we'll finish Lecture 2. To consolidate your knowledge, you may want to read the second Chapter of LYH (http://learnyouahaskell.com/starting-out). We'll then look further into types and type classes. To prepare, you may (but  need not to) read Chapter 3 of LYH (http://learnyouahaskell.com/types-and-typeclasses). The theoretically inclined may (but need not to) read or skim through this and this.

We'd be happy to answer your questions. Please post them in our google group (https://groups.google.com/forum/#!forum/haskell-fer).

Jan Šnajder
Objavljeno: 16.10.2015. u 09:42

We'll have another extra class on Tuesday, Oct 20, at 18:15. The reason for this is that we want to bring you up to speed as soon as possible. As this is an extra slot, attendance will not be recorded. Nonetheless, you are strongly encouraged to come because the topic we'll be looking at (Types) is a fundamental one.

Jan Šnajder
Objavljeno: 02.10.2015. u 19:13

PUH starts on Tuesday, Oct 13, at 18:15 in lecture room D272.

You are expected to bring your own laptop computer to each class. There will be a limited number of power outlets available (we can only use a few extension cords). Please ensure that your laptop battery is fully charged before coming to the class.

For the first lecture, you will need to install the Haskell Platform on your laptop computer. You can get the Haskell Platform from here: http://hackage.haskell.org/platform/

If you encounter any problems, please post your questions here: http://groups.google.com/group/haskell-fer

Jan Šnajder
Objavljeno: 30.09.2015. u 07:32

As October 8 is a public holiday, the first class has been rescheduled to Tuesday, October 13, most likely at 6:15pm. The exact time and location will be announced once the timetable has been finalized.

The second class will be held, as planned, on Thursday, October 15. To level you up faster, in the first couple of weeks we wil have two sessions a week. We will soon publish a more detailed course schedule so that you can plan ahead.

Jan Šnajder
Objavljeno: 20.07.2015. u 00:00
Uređeno: 18.09.2015. u 11:54
PUH 2015 Applications

Applications for Programming in Haskell (PUH) 2015 course are now open. Click here to learn more about this course.

To apply, please fill in the application form at http://tinyurl.com/orzeyzr

The application deadline is Sep 20, 2015 at midnight. Applications after the deadline will not be accepted. Notifications of acceptance will be sent out on Sep 25, 2015.

Jan Šnajder
Objavljeno: 17.07.2015. u 09:57
Programming in Haskell 2015 Course

We're excited to announce the fourth edition of the Programming in Haskell (PUH) course! The course will be offered in the Fall semester of AY 2015/2016. Students of all study levels and profiles are invited to join!

Haskell (http://www.haskell.org) is an advanced, purely functional programming language. Functional programming languages allow for the development of robust, concise programs in a short amount of time. By learning to program in Haskell, you will get acquainted with the functional programming paradigm -- a programming style radically different from the one you're probably used to. Haskell will change your perspective on programming and make you a better programmer, regardless of the language you program in. Allow yourself the epiphany of discovering this remarkable perspective on programming!

PUH (http://www.fer.unizg.hr/predmet/puh) gives an introductory but thorough treatment of Haskell programming. You will learn the basic concepts of functional programming and develop your Haskell programming skills by solving a variety of problems, as part of in-class hands-on exercises, regular homework assignments, and a final project. A strong team of five TAs will guide you and make sure you're doing everything right.

When, where, and how?

The lectures will be held on Thursdays, 6:15-8:30 pm in lecture room D272. Distance learning is not offered for this course. The course will be held in English (level L3). The course ECTS credits (4 ECTS) count towards the "Skills" ECTS quota.

Applications

All students need to apply. The applications are submitted online. Besides the basic data, the application includes a questionnaire and a motivational letter of at most 200 words. Students of all levels and profiles can apply, provided they have passed the Programming and Software Engineering course and Algorithms and Data Structures course, or have equivalent skills.

Numerus clausus

For organizational reasons, the number of participants is limited. Precedence is given to (1) applicants who demonstrate a high motivation for the course, (2) second year MA students, (3) students who have not previously enrolled in this course. The time of application will not be considered when evaluating the applications. Incoming exchange students will be accepted unconditionally.

Applications from non-FER students and non-students

PUH is open to highly motivated non-FER students as well as non-students, including future and past students. Such participants must also apply (see above) but their applications will be evaluated extra quota. Note that the following restrictions apply: (1) no certificate of attendance will be provided and (2) homeworks and project assignments may not be graded. An exception are the UNIZG students that work out the formalities with their administration offices. We reserve the right to reject applications due to participant unsuitability or our limited resources.

Course enrollment requirements

All participants are required to (1) have a notebook/laptop that they can use for in-class hands-on sessions, (2) have a good command of English, (3) ensure that they can attend all classes (with at most one class absence), (4) devote at least 8 hours a week for homework/project assignments, (5) devote about 1 hour a week for peer-reviewing the homework of your fellow students. Only one excused class absence is allowed; class absence policy will be strictly enforced. No previous knowledge of functional programming is required.

The estimated total workload for this course is 135 hours.

Course passing requirements

The students must fulfill the following requirements to pass PUH:

  1. Attend all but at most one lecture

  2. Score at least 50% on each homework assignment

  3. Score at least 50% on the final project

  4. Pass the midterm exam

  5. Complete all peer review assignments in the time allotted

Important dates

  • Applications open: Jul 20, 2015

  • Applications close: Sep 20, 2015 at midnight

  • Notification of acceptance: Sep 25, 2015

  • Class start: Oct 8, 2015 at 6:15 pm

All announcements will be posted on the course website (http://www.fer.unizg.hr/predmet/puh). FER students be sure to subscribe to receive email notifications.

Additional information

Jan Šnajder
Objavljeno: 18.06.2015. u 21:44
Uređeno: 27.06.2015. u 17:57
PUH 2015: Teaching assistants wanted!

Time to roll once again! Next edition of PUH will start in October 2015.

We're looking for PUH teaching assistants. Teaching assistants (1) know how to program in Haskell and absolutely love it, (2) have loads of spare time for preparing and grading homeworks, (3) are free on Thursdays evening, and (4) like teaching and helping imperative-programming-indoctrinated fellow students.  

If you see yourself as a PUH TA, please APPLY NOW! In your application, please state (1) your study profile and study year, (2) short description of your previous memorable experience with Haskell, and (3) motivation in at most 128 characters (including whitespaces).

Please send your application to (jan.snajder-at-fer.hr) no later than June 28, 2015.

Jan Šnajder
FORUM
Sortiraj prema: naslovu | vremenu zadnjeg odgovora | vremenu otvaranja teme
Naslov Odgovori Zadnji odg.
ČESTA PITANJA
REPOZITORIJ
 
ANKETA
 
Glasovanje je završilo!

ANKETA
 
Na ovoj stranici trenutno nije odabrana niti jedna anketa!