学部・大学院区分
Undergraduate / Graduate
情報学部
時間割コード
Registration Code
1001099
科目区分
Course Category
専門科目(コンピュータ科)関連専門科目(自然,人社)
科目名 【日本語】
Course Title
非手続型言語及び演習
科目名 【英語】
Course Title
Non-procedural Languages
コースナンバリングコード
Course Numbering Code
SIS-13-3009-J
担当教員 【日本語】
Instructor
酒井 正彦 ○
担当教員 【英語】
Instructor
SAKAI Masahiko ○
単位数
Credits
2
開講期・開講時間帯
Term / Day / Period
春1期 火曜日 1時限
春1期 火曜日 2時限
Spring1 Tue 1
Spring1 Tue 2
対象学年
Year
3年
3
授業形態
Course style
講義及び演習
開講系(学部)・開講専攻(大学院)
Subject
CS共通
必修・選択
Required / Selected
CS(情報)必修


授業の目的 【日本語】
Goals of the Course(JPN)
新しい考え方に基づくプログラミング言語である関数型言語Haskellを学び,宣言型のプログラミングの基本的な考え方を習得する。
授業の目的 【英語】
Goals of the Course
We learn functional language Haskell, which is a programming language based on a new notion, and study the basics of declarative programming.
到達目標 【日本語】
Objectives of the Course(JPN)
関数型プログラミングの基本概念を理解し,小規模のプログラミングに応用できる。
到達目標 【英語】
Objectives of the Course
Goal of this calss is to understand basic notions of functional programming, and be able to program simple applications.
授業の内容や構成
Course Content / Plan
関数定義に基づく基本的なプログラミング手法,再帰的な定義の概念,高階関数,柔軟なデータ構造を定義する方法を学ぶ。

1. 関数型言語,プログラミングの基本
2. 型とクラス
3. 関数定義
4. リストと再帰関数
5. 高階関数
6. 対話プログラム
7. 型とクラス定義
8. 遅延評価
We learn basic programming by defining functions, notion of recursive definition, higher-order function, and definition of flexible data structures.

1. Basics of programming in functional language
2. Types and classes
3. Definition of functions
4. Lists and recursive functions
5. Higher-order functions
6. Interactive program
7. Defining types and classes
8. Lazy evaluation
履修条件・関連する科目
Course Prerequisites and Related Courses
C言語などの手続き型プログラミング言語の基礎知識、および、数学的帰納法などの離散数学の知識を有することが望ましい。
成績評価の方法と基準
Course Evaluation Method and Criteria
演習50%,期末試験50%で評価する。ただし、2回以上の演習課題未提出、ならびに、期末試験欠席者は「W(欠席)」とする。
教科書・参考書
Textbook/Reference book
授業で用いるスライドのハンドアウトをWEB上に用意する。
教科書:プログラミングHaskell 第2版,Graham Hutton 著,山本和彦 訳,ラムダノート,ISBN: 4908686076
Handouts of the slides written in Japanese are found on web.
Textbook: Graham Hutton, Programming in Haskell, second edition, Cambridge University Press.
This course will be taught in Japanese.
課外学習等(授業時間外学習の指示)
Study Load(Self-directed Learning Outside Course Hours)
必要に応じて授業で示す。
授業開講形態等
Lecture format, etc.
nuct講義ページを通じて通知する。
遠隔授業(オンデマンド型)で行う場合の追加措置
Additional measures for remote class (on-demand class)