情報処理学会 第84回全国大会 会期:2022年3月3日~5日 情報処理学会 第84回全国大会 会期:2022年3月3日~5日

6G-06
Julia言語のメタプログラミング機能を利用した call by need および末尾呼出し機構の視覚化教材
○佐々木重雄(秋田大)
プログラミング教育において,関数呼出し(メソッド呼出し)は大きなハードルの1つで,初級教育を終えてもよく理解しない者がいる。本稿では,Julia言語のメタプログラミング機能を用いて,項書換系ベースのインタプリタを作成し,式の評価機構を示す教材を作成した。関数呼出しの call-by-need や末尾関数を終える際の戻り値の処理などを示すことができ,両者の類似性も見て取ることができる。

Julia言語は Lisp言語並みにメタプログラミングが容易で,かつ,一般的なプロラミング言語に似たコードの構文操作が可能である。本稿で取り上げた話題の他にも様々なプログラミング教材に応用可能と期待される。