i217e Functional Programming 

Lecturers: OGATA, Kazuhiro (email: ogata at jaist dot ac dot jp) and DO, Canh Minh (email: canhdo at jaist dot ac dot jp)
Term 2-1 (Oct 10 - Nov 30), 2024

Contents:
News
How to tackle
Exam
Assignments
Class schedule (lecture notes)
A programming language Minila (used at 8th, 9th & 10th classes)
Links


News

- Oct 16: The submission deadline of HW3 has been extended as follows: Midnigt of Oct 28 (JST)
On Oct 24, how to write traces will be demonstrated..
Note that all traces should be written manually (by hand)..

-
Sept 25:: This website was open.


How to tackle

For each class, learn the lecture note in advance, solve the exercises found in the lecture note, clarify what you have not understood and attend the class. At the class, ask the lecturer about what you have not understood to get better understandings of them. After the class, solve the exercises you have not solved to confirm your understandings. Solving the exercises is part of the assignments, and then you are supposed to do so if you want to get the credits of the course. Programs used in the course are not to be given intentionally but required to be typed by each participant, which is part of the exercises. Please read
this in advance.


Exam


13:30-15:10, Nov 28, Thursday


Assignment

Part of the exercises found in the lecture notes are the assignment problems. The details, such as the submission deadine, will be described at classes.


Class schedule (lecture notes)

9:00-10:40, Oct 10, Thursday
1. Sorts, Operators, Terms and Equations (
lecture note 1)
Submission deadline of HW1: Midnight of Oct 15 (JST)

13:30-15:10, Oct 10, Thursday
2. Modules, Order Sorts and Lists of Natural Numbers (
lecture note 2)
Submission deadline of HW2: Midnight of  Oct 17 (JST)

10:50 - 12:30, Oct 15, Tuesday
3. Tern Rewriting (
lecture note 3)
Submission deadline of HW3: Midnigt of Oct 24 Oct 28(JST)

9:00-10:40, Oct 24, Thursday
Tutorial Hour (for lecture note 3)

13:30-15:10, Oct 24, Thursday
4. Parametrized Modules (
lecture note 4)
Submission deadline of HW4: Midnigt of Oct 31 (JST)

10:50 - 12:30, Oct 29, Tuesday
5. Tables (
lecture note 5
Submission deadline of HW5: Midnigt of Nov 5 (JST)

9:00-10:40, Nov 7, Thursday
6. Infinite Lists (
lecture note 6)
Submission deadline of HW6: Midnigt of Nov 14 (JST)


13:30 - 15:40, Nov 7, Thursday
7. Multisets (
lecture note 7)
Submission deadline of HW7: Midnigt of  Nov 19 (JST)

11:50-12:30, Nov 12, Tuesday
8. A Programming Language Processor - Interpreter (
lecture note 8)

9:00 - 11:40, Nov 14, Thursday
9. A Programming Language Processor - Virtual Machine (
lecture note 9)

13:30 - 15:40, Nov 14, Thursday
10. A Programming Language Processor - Compiler (
lecture note 10)
Submission deadline of HW8, 9, and 10: Midnigt of Nov 21 (JST)

11:50-12:30, Nov 19, Tuesday
11. Program Verification - Natural Numbers (
lecture note 11)
Submission deadline of HW11: Midnight of Nov 26 (JST)

9:00 - 11:40, Nov 21, Thursday
12. Pregram Verification - Lists (
lecture note 12)
Submission deadline of HW12: Midnight of  Dec 5 (JST)

13:30-15:40, Nov 21, Thursday
13. Verification of Arithmetic Caclulator Compiler (
lecture note 13)
Submission deadline of HW13: Midnight of  Dec 10 (JST)

9:00-10:4011:50-12:30, Nov 26, Tuesday
Tutorial Hour (for Exam)

9:00 - 11:40, Nov 28, Thursday
14. Proof Assistant (
lecture note 14)
Submission deadline of HW14: Midnight of Dec 12 (JST)

13:30-15:10, Nov 28, Thursday

Exam


A Programming Language Minila (used at 8th, 9th & 10th classes)

ast.cafe
misc.cafe
interpreter.cafe
vm.cafe
compiler.cafe


Links

CafeOBJ


Sept 25, 2024 by K. Ogata