70 likes | 185 Views
高度情報演習 1A スクリーンセーバ作成. 2014 年 4 月 9 日. 情報工学科 篠埜 功. 内容. スクリーンセーバ記述言語の設計 このような特定用途の言語を domain specific language ( 領域特化言語)という。スクリーンセーバ作成用に言語を作る人はまずいないと思われるが、演習に適していると考え、これを題材とする。 各自が設計した言語のプログラムを読み込んでスクリーンセーバを実行するプログラムを作成
E N D
高度情報演習1Aスクリーンセーバ作成 2014年4月9日 情報工学科篠埜 功
内容 • スクリーンセーバ記述言語の設計 • このような特定用途の言語をdomain specific language(領域特化言語)という。スクリーンセーバ作成用に言語を作る人はまずいないと思われるが、演習に適していると考え、これを題材とする。 • 各自が設計した言語のプログラムを読み込んでスクリーンセーバを実行するプログラムを作成 • 設計する言語は非常に単純なものでよいが、新しい言語の設計を必須とする。構文解析プログラムは手書きでよいが、複雑な記述言語を設計する場合はlex, yaccの使用を推奨する。 • 画像の描画にはOpenGLを使用する。(他のライブラリを使ってもよい) • コンパイル環境はMinGWを用いる。(他の環境を用いてもよい)
例 簡単なスクリーンセーバ記述言語のプログラム例: UUUUUUUUUUUUUUUUUUUURRRRRRRRRRRRRRRRRRRRDDDDDDDDDDDDDDDDDDDDLLLLLLLLLLDDDDDDDDDDLLLLLLLLLLUUUUUUUUUU Uは上、Dは下、Rは右、Lは左を表すものとし、 この方向に少しずつ正方形が動いていく。
デモ • 私が作成した例 • 昨年度の学生が作成した例
スケジュール • 第1回 --- スクリーンセーバ記述言語の簡単な具体例およびその言語を読み取ってスクリーンセーバを実行するプログラムの提示 • 第1回の残り時間〜第3回 --- 自分でスクリーンセーバ記述言語を設計し、その言語を読み取ってスクリーンセーバを実行するプログラムの作成 • 第4回 --- 第5回で発表できるようにスライド等を準備 • 第5回 --- 自分の設計した言語の説明およびその言語で記述したスクリーンセーバプログラムの具体例を1つ動作させるという発表を1人ずつPowerpoint等を用いて行う。
評価 • 第5回の発表により評価を行う。(体調不良等で第5回に出席できない場合は電子メールでのレポート提出で採点する。) • 私の提示した記述言語とは異なる言語(簡単なものでよい)を設計し、何らかのスクリーンセーバが動作していれば6割の得点を確保する。
注意事項 • 学情センターのパソコンでは、(システムポリシーにより)スクリーンセーバを各自で設定できないように制限がかけられているいるため、.scrファイルを直接実行することによりスクリーンセーバを動作させることとする。