Siirry suoraan sisältöön

Functional ProgrammingLaajuus (5 cr)

Code: TTC8810

Credits

5 op

Teaching language

  • English

Responsible person

  • Jani Immonen

Objective

Purpose:
You will be aware of the functional programming paradigm and write simple programs and services using a purely functional language. You understand the functional programming paradigm and will be aware of concepts such as immutability and recursion.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working 
Multidisciplinary competences
Investigations and information retrieval

Learning outcomes:
You will be able to utilize functional programming principles and develop software with at least one purely functional programming language.

Content

The course covers an introduction to functional programming using a purely functional programming language. The course also covers various programming language related concepts and terminologies e.g. mutability and state.

Qualifications

Basics in programming, Operating systems, Data structures and algorithms

Assessment criteria, satisfactory (1)

Sufficient (1): The student is familiar with the topics discussed during the course. The student is able to write simple functions in a functional manner using a functional programming language with assistance.

Satisfactory (2): The student understands most of the topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple programs in a functional manner using a functional programming language with assistance.

Assessment criteria, good (3)

Good (3): The student is able to utilize the knowledge gained on the course in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple programs in a functional manner using a functional programming language.

Very good (4): The student is able to utilize the knowledge gained on the course in most common cases. The student is able to search and understand information about the discussed topics. The student is able to write programs in a functional manner using a functional programming language.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about the discussed topics independently. The student is able to write complex programs in a functional manner using a functional programming language.

Enrollment

18.11.2024 - 09.01.2025

Timing

13.01.2025 - 30.04.2025

Number of ECTS credits allocated

5 op

Mode of delivery

Face-to-face

Unit

School of Technology

Campus

Lutakko Campus

Teaching languages
  • English
Seats

0 - 35

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
  • Bachelor's Degree Programme in Information and Communications Technology
Teachers
  • Jani Immonen
Groups
  • TTV22S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S3
    Tieto- ja viestintätekniikka (AMK)
  • TIC22S1
    Bachelor's Degree Programme in Information and Communications Technology
  • TTV22S1
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S4
    Tieto- ja viestintätekniikka (AMK)

Objective

Purpose:
You will be aware of the functional programming paradigm and write simple programs and services using a purely functional language. You understand the functional programming paradigm and will be aware of concepts such as immutability and recursion.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working 
Multidisciplinary competences
Investigations and information retrieval

Learning outcomes:
You will be able to utilize functional programming principles and develop software with at least one purely functional programming language.

Content

The course covers an introduction to functional programming using a purely functional programming language. The course also covers various programming language related concepts and terminologies e.g. mutability and state.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment.

Teaching methods

- lectures
- independent study
- distance learning
- small group learning
- exercises
- learning tasks

Employer connections

- projects

Exam schedules

The possible date and method of the exam will be announced in the course opening.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 50 h
- exercises 15 h
- assignment 40 h
- independent study 30 h
Total 135 h

Further information

Compulsory attendance to the lessons. Part of the assessment is based on attendance.

Helping other students with their assignments earns extra points for the grade.

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

Sufficient (1): The student is familiar with the topics discussed during the course. The student is able to write simple functions in a functional manner using a functional programming language with assistance.

Satisfactory (2): The student understands most of the topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple programs in a functional manner using a functional programming language with assistance.

Arviointikriteerit, hyvä (3-4)

Good (3): The student is able to utilize the knowledge gained on the course in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple programs in a functional manner using a functional programming language.

Very good (4): The student is able to utilize the knowledge gained on the course in most common cases. The student is able to search and understand information about the discussed topics. The student is able to write programs in a functional manner using a functional programming language.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about the discussed topics independently. The student is able to write complex programs in a functional manner using a functional programming language.

Qualifications

Basics in programming, Operating systems, Data structures and algorithms

Enrollment

01.08.2024 - 22.08.2024

Timing

26.08.2024 - 18.12.2024

Number of ECTS credits allocated

5 op

Virtual portion

5 op

Mode of delivery

Online learning

Unit

School of Technology

Teaching languages
  • English
Seats

0 - 35

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
  • Bachelor's Degree Programme in Information and Communications Technology
Teachers
  • Jani Immonen
Groups
  • TTV22S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S3
    Tieto- ja viestintätekniikka (AMK)
  • TIC22S1
    Bachelor's Degree Programme in Information and Communications Technology
  • TTV22S1
    Tieto- ja viestintätekniikka (AMK)
  • TTV22SM
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S4
    Tieto- ja viestintätekniikka (AMK)
  • TTV22SM2
    Tieto- ja viestintätekniikka (AMK)

Objective

Purpose:
You will be aware of the functional programming paradigm and write simple programs and services using a purely functional language. You understand the functional programming paradigm and will be aware of concepts such as immutability and recursion.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working 
Multidisciplinary competences
Investigations and information retrieval

Learning outcomes:
You will be able to utilize functional programming principles and develop software with at least one purely functional programming language.

Content

The course covers an introduction to functional programming using a purely functional programming language. The course also covers various programming language related concepts and terminologies e.g. mutability and state.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment.

Teaching methods

- lectures
- independent study
- distance learning
- small group learning
- exercises
- learning tasks

Employer connections

- projects

Exam schedules

The possible date and method of the exam will be announced in the course opening.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 50 h
- exercises 15 h
- assignment 40 h
- independent study 30 h
Total 135 h

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

Sufficient (1): The student is familiar with the topics discussed during the course. The student is able to write simple functions in a functional manner using a functional programming language with assistance.

Satisfactory (2): The student understands most of the topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple programs in a functional manner using a functional programming language with assistance.

Arviointikriteerit, hyvä (3-4)

Good (3): The student is able to utilize the knowledge gained on the course in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple programs in a functional manner using a functional programming language.

Very good (4): The student is able to utilize the knowledge gained on the course in most common cases. The student is able to search and understand information about the discussed topics. The student is able to write programs in a functional manner using a functional programming language.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about the discussed topics independently. The student is able to write complex programs in a functional manner using a functional programming language.

Qualifications

Basics in programming, Operating systems, Data structures and algorithms

Enrollment

20.11.2023 - 04.01.2024

Timing

08.01.2024 - 30.04.2024

Number of ECTS credits allocated

5 op

Mode of delivery

Face-to-face

Unit

School of Technology

Teaching languages
  • English
Seats

0 - 35

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
  • Bachelor's Degree Programme in Information and Communications Technology
Teachers
  • Jani Immonen
Groups
  • TTV21S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S5
    Tieto- ja viestintätekniikka (AMK)
  • TIC21S1
    Bachelor's Degree Programme in Information and Communications Technology
  • TTV21S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S1
    Tieto- ja viestintätekniikka (AMK)

Objective

Purpose:
You will be aware of the functional programming paradigm and write simple programs and services using a purely functional language. You understand the functional programming paradigm and will be aware of concepts such as immutability and recursion.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working 
Multidisciplinary competences
Investigations and information retrieval

Learning outcomes:
You will be able to utilize functional programming principles and develop software with at least one purely functional programming language.

Content

The course covers an introduction to functional programming using a purely functional programming language. The course also covers various programming language related concepts and terminologies e.g. mutability and state.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment.

Teaching methods

- lectures
- independent study
- distance learning
- small group learning
- exercises
- learning tasks

Employer connections

- projects

Exam schedules

The possible date and method of the exam will be announced in the course opening.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 50 h
- exercises 15 h
- assignment 40 h
- independent study 30 h
Total 135 h

Further information

Compulsory attendance to the lessons. Part of the assessment is based on attendance.

Helping other students with their assignments earns extra points for the grade.

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

Sufficient (1): The student is familiar with the topics discussed during the course. The student is able to write simple functions in a functional manner using a functional programming language with assistance.

Satisfactory (2): The student understands most of the topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple programs in a functional manner using a functional programming language with assistance.

Arviointikriteerit, hyvä (3-4)

Good (3): The student is able to utilize the knowledge gained on the course in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple programs in a functional manner using a functional programming language.

Very good (4): The student is able to utilize the knowledge gained on the course in most common cases. The student is able to search and understand information about the discussed topics. The student is able to write programs in a functional manner using a functional programming language.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about the discussed topics independently. The student is able to write complex programs in a functional manner using a functional programming language.

Qualifications

Basics in programming, Operating systems, Data structures and algorithms

Enrollment

01.08.2023 - 24.08.2023

Timing

28.08.2023 - 19.12.2023

Number of ECTS credits allocated

5 op

Virtual portion

5 op

Mode of delivery

Online learning

Unit

School of Technology

Teaching languages
  • English
Seats

0 - 35

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
Teachers
  • Jani Immonen
Groups
  • TTV21S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV21SM
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S1
    Tieto- ja viestintätekniikka (AMK)

Objective

Purpose:
You will be aware of the functional programming paradigm and write simple programs and services using a purely functional language. You understand the functional programming paradigm and will be aware of concepts such as immutability and recursion.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working 
Multidisciplinary competences
Investigations and information retrieval

Learning outcomes:
You will be able to utilize functional programming principles and develop software with at least one purely functional programming language.

Content

The course covers an introduction to functional programming using a purely functional programming language. The course also covers various programming language related concepts and terminologies e.g. mutability and state.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment.

Teaching methods

- lectures
- independent study
- distance learning
- small group learning
- exercises
- learning tasks

Employer connections

- projects

Exam schedules

The possible date and method of the exam will be announced in the course opening.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 50 h
- exercises 15 h
- assignment 40 h
- independent study 30 h
Total 135 h

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

Sufficient (1): The student is familiar with the topics discussed during the course. The student is able to write simple functions in a functional manner using a functional programming language with assistance.

Satisfactory (2): The student understands most of the topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple programs in a functional manner using a functional programming language with assistance.

Arviointikriteerit, hyvä (3-4)

Good (3): The student is able to utilize the knowledge gained on the course in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple programs in a functional manner using a functional programming language.

Very good (4): The student is able to utilize the knowledge gained on the course in most common cases. The student is able to search and understand information about the discussed topics. The student is able to write programs in a functional manner using a functional programming language.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about the discussed topics independently. The student is able to write complex programs in a functional manner using a functional programming language.

Qualifications

Basics in programming, Operating systems, Data structures and algorithms

Enrollment

01.11.2022 - 05.01.2023

Timing

09.01.2023 - 28.04.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Face-to-face

Unit

School of Technology

Campus

Lutakko Campus

Teaching languages
  • English
Seats

0 - 30

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
Teachers
  • Jani Immonen

Objective

Purpose:
You will be aware of the functional programming paradigm and write simple programs and services using a purely functional language. You understand the functional programming paradigm and will be aware of concepts such as immutability and recursion.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working 
Multidisciplinary competences
Investigations and information retrieval

Learning outcomes:
You will be able to utilize functional programming principles and develop software with at least one purely functional programming language.

Content

The course covers an introduction to functional programming using a purely functional programming language. The course also covers various programming language related concepts and terminologies e.g. mutability and state.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment.

Teaching methods

- lectures
- independent study
- distance learning
- small group learning
- exercises
- learning tasks

Employer connections

- projects

Exam schedules

The possible date and method of the exam will be announced in the course opening.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 50 h
- exercises 15 h
- assignment 40 h
- independent study 30 h
Total 135 h

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

Sufficient (1): The student is familiar with the topics discussed during the course. The student is able to write simple functions in a functional manner using a functional programming language with assistance.

Satisfactory (2): The student understands most of the topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple programs in a functional manner using a functional programming language with assistance.

Arviointikriteerit, hyvä (3-4)

Good (3): The student is able to utilize the knowledge gained on the course in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple programs in a functional manner using a functional programming language.

Very good (4): The student is able to utilize the knowledge gained on the course in most common cases. The student is able to search and understand information about the discussed topics. The student is able to write programs in a functional manner using a functional programming language.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about the discussed topics independently. The student is able to write complex programs in a functional manner using a functional programming language.

Qualifications

Basics in programming, Operating systems, Data structures and algorithms

Enrollment

01.08.2022 - 25.08.2022

Timing

29.08.2022 - 16.12.2022

Number of ECTS credits allocated

5 op

Virtual portion

5 op

Mode of delivery

Online learning

Unit

School of Technology

Campus

Lutakko Campus

Teaching languages
  • English
Seats

0 - 70

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
Teachers
  • Jani Immonen

Objective

Purpose:
You will be aware of the functional programming paradigm and write simple programs and services using a purely functional language. You understand the functional programming paradigm and will be aware of concepts such as immutability and recursion.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working 
Multidisciplinary competences
Investigations and information retrieval

Learning outcomes:
You will be able to utilize functional programming principles and develop software with at least one purely functional programming language.

Content

The course covers an introduction to functional programming using a purely functional programming language. The course also covers various programming language related concepts and terminologies e.g. mutability and state.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment.

Teaching methods

- lectures
- independent study
- distance learning
- small group learning
- exercises
- learning tasks

Employer connections

- projects

Exam schedules

The possible date and method of the exam will be announced in the course opening.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 50 h
- exercises 15 h
- assignment 40 h
- independent study 30 h
Total 135 h

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

Sufficient (1): The student is familiar with the topics discussed during the course. The student is able to write simple functions in a functional manner using a functional programming language with assistance.

Satisfactory (2): The student understands most of the topics discussed during the course, however, he/she struggles to utilize this knowledge. The student is not able to search for relevant information independently. The student is able to write simple programs in a functional manner using a functional programming language with assistance.

Arviointikriteerit, hyvä (3-4)

Good (3): The student is able to utilize the knowledge gained on the course in the most basic cases. The student is able to utilize information about the discussed topics. The student is able to write simple programs in a functional manner using a functional programming language.

Very good (4): The student is able to utilize the knowledge gained on the course in most common cases. The student is able to search and understand information about the discussed topics. The student is able to write programs in a functional manner using a functional programming language.

Assessment criteria, excellent (5)

Excellent (5): The student understands all topics discussed during the course and is able to use them in an innovative manner even in challenging situations. The student is able to search and utilize information about the discussed topics independently. The student is able to write complex programs in a functional manner using a functional programming language.

Qualifications

Basics in programming, Operating systems, Data structures and algorithms