• 検索結果がありません。

プログラミング言語意味論( 2019 年度)・テスト問題用紙

N/A
N/A
Protected

Academic year: 2021

シェア "プログラミング言語意味論( 2019 年度)・テスト問題用紙"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

プログラミング言語意味論 ( 2019 年度) ・テスト問題用紙

(2020 年 02 月 06 日(木) )

解答上、その他の注意事項

I.

問題は、問

I〜III

まである。

II.

解答用紙の右上の欄に学籍番号・名前を記入すること。

III.

ノート・プリント・参考書などは持ち込み可である。

IV.

携帯電話などの通信機能を持つもの及び

PC

は 持ち込み不可 である。

V.

テストの配点は

50

点(+ボーナス

20

点)である。合格はレポートの得点を加点して、

100

点満点中

60

点以上とする。

1

(2)

I. (ラムダ計算) (12点×2) 次のλ式が正規形に到達するまでの、最左戦略による1ステップずつのβ簡約の列を書け。た だし、5回以内の最左戦略によるβ簡約で正規形に到達しない式については、それが判別でき る時点(以前と同じ式が出現した時点)、または5回β簡約した時点で止めてよい。

解答例1:

f x.f(f x))((λf x.f(f x))g)y

−→β (λx.((λf x.f(f x))g)(((λf x.f(f x))g)x))y

−→β ((λf x.f(f x))g)(((λf x.f(f x))g)y)

−→βx.g(gx))(((λf x.f(f x))g)y)

−→β g(g(((λf x.f(f x))g)y))

−→β g(g((λx.g(gx))y))

−→β g(g(g(gy)))

解答例2:

x.xx)(λx.xx)

−→β (λx.xx)(λx.xx)

−→β (停止しない)

(1) (λzw.zww)(λxy.x)(λxy.y) (2) (λxy.xy(λuv.u))(λab.b)(λcd.c)

なお、必要に応じてI ≡λx.xなど適宜、定数を定義しても良い。

II. (語句) (7点×3+5点)

プログラミング言語(やその処理系)で用いられる次の6つの語句のう3つを選択し説明せよ。

さらにそのうち1つについては ソースコードなど、具体的な例を挙げよ。ただし、講義プリン トにのっている例ではなく オリジナル の例を考えること。

遅延評価(lazy evaluation)

参照透明性(referential transparency)

非決定性(nondeterminism)

• 接続 (あるいは継続)(continuation)

多相(polymorphism)

コルーチン(coroutine)

III. (自由記述—ボーナス問題) (最高20点)

2020年度から小学校で「プログラミング教育」が必修化される。学習指導要領では「児童がプ ログラミングを体験しながら、コンピュータに意図した処理を行わせるために必要な論理的思 考力を身に付けるための学習活動」を実施すること、とされている。

あなたが小学校の教員なら、どのような題材を選んで、どのように教えるか?計画を立てよ。

なお、予算や時間の制約などを考慮した現実的な提案でも良いし、制約を度外視した理想的な 提案でも良い。

2

(3)

プログラミング言語意味論 (2019 年度) ・テスト解答用紙 (2020 年

02

06

日)

学籍番号 氏名

(4)
(5)

学籍番号 氏名

(6)

参照

関連したドキュメント

持ち込みは不可である。筆記用具・時計・学生証以外のものは、かばんの中などにしま

持ち込みは不可である。筆記用具・時計・学生証以外のものは、かばんの中などにしま

問 I を解答するときのみ、 PC を使用して良い。ネットワークに接続して WWW を閲覧

問 I を解答するときのみ、ノート PC を使用して良い。ネットワークに接続して WWW

特集:教育用プログラミング言語と授業利用  a,b

再帰や相互作用の計算モデルを理解する鍵となるものですが、実は、結び目の不変量や量

プログラミング言語には、多くの種 類がある。 その背景には、様々な 概念(パラダイム) がある. 背景のパラダイムを理解する

「私」、「いま」、「ここ」など指標詞を含む文について、それらの真理条件的内容を決