« RTOSの必要性 | メイン | あと1日 »

2005年09月16日

時間配分は難しい

4日間の集中講義を、アーキテクチャ、コンパイラ、人工知能基礎、同応用、に配分してみた。 が、2日目のコンパイラを1日中やるのは少し長すぎた感がある。 もともと、そう予想されたので、デモを入れたけれど、デモはほんの短い時間。 講義の時間のほうが圧倒的に長い。

それに学部ではなく、大学院の講義、ということで、イントロ部分は別にして、「レベルを高く」という制約もある。 眠くなる学生さんの気持ちもわかる。 アーキテクチャとGCCまではともかく、コンパイラを形式言語から説く、というのは、出身学科が電子の人にはきついだろう。

まぁ、明日、いやもう今日(3日目)からは誰も眠らせないぞ!


          ********

「コンパイラ作成の必要性」はつぎのとおり。

クロスコンパイラは、ターゲットのプロセッサが変わるたびに作成しないといけない。 GCCをみれば、すごい数のコンパイラがあるのがわかる。 マイ・プロセッサにはマイ・コンパイラが要る。 VLIWなら、アーキテクチャより、むしろコンパイラのほうが重要になる。

だから、コンパイラ作成技術を身につけて、という筋。 もちろん、裏には Yacc (Bison) の話があるのだが、「そこまでは踏み込みたくない」という学生さんが多い。 Yacc については、昔インターフェースに4回連載記事を書いたくらい、こちらには自信がある。 (自分の書いた記事でも忘れてしまったところもあったが。) もちろん、最適化を重視するときは、Yacc だけに頼っては駄目だが、まずは、Yacc から始めるのが初心者向け。

じつは、昔、学部でコンパイラの講義を10年ちかくやったときも、尻込みする学生が多かった。 そのあと、担当した先生も苦労しているようだ。 経験的には2割ぐらいかな、試作にチャレンジするのは。

思ったほど難しくない、と思うのだけれど、Yacc には相性があるみたい。

投稿者 tadashi : 2005年09月16日 00:05

コメント

コメントしてください




保存しますか?