アイデアコース 講評

【全体講評】

今年のアイデアコースへの応募総数は 2 件であった.  
そもそもアイデアで「アッ」と言わせるようなプログラムを作成すること自体が
難しいので, 応募件数が少ないであろうことは予想していたものの, 
最初 2 件と聞いた時は審査員として多少寂しい気もした.  
しかし, 今回優秀賞に輝いた倉持氏の KLIjava は
そんなブルーな気分を吹き飛ばしてくれるのに十分値する作品であった.  
今後, さらに KLIjava の完成度が上がることを期待して, 
審査員奨励賞も差し上げた.  

画像ファイル変換プログラム pnmcon (佳作) を受賞した福田氏は
スピードコースの優秀賞も受賞している.  
このように, 他のコースに応募した上で余裕のある参加者が
アイデアコースへ応募するという傾向は, なにも今年に限ったことではない.  
しかし, アイデアに溢れたプログラムを書くためには, 
とにかく常日頃から沢山のアイデアを捻り出す訓練が必要である.  
今回の福田氏の作品のアイデアは小さなものではあったが, 
思い付いたら KLIC でプログラミングを行い, 
アイデアコースに応募したという実績は大変素晴らしい.  
そのチャレンジ精神には大いに敬意を表したい.  


【プログラム講評】

* pnmcon: 画像ファイル変換プログラム

この応募作品は PNM の 6 種類の画像ファイルフォーマットを
相互変換するプログラムである.  

本作品は, サイズ的には小ぶり (約 700 行) であり, 
機能としてもやや目新しさには欠けるものの, 
KLIC のアプリとして身近なツールを題材にした点が評価できる.  

作者は, 本作品の将来の拡張として
gif 形式や jpeg 形式への対応, 並列化などを挙げているが, 
応募までに間に合わなかったのが惜しまれる.  

プログラミング言語はあらゆる用途に対して使い込むことで, 
初めて新たな改良点を見いだすことが可能となる.  
こんなものまで KLIC で書ける, 書いてもいいんです, どんどん書こう!
というお手本としたい.  

以上のことを考慮し佳作とした.  

* KLIjava: KL1 to Java compiler and runtime system

この応募作品は, KL1 プログラムを Java にコンパイルするコンパイラと, 
その実行を助ける実行時システムからなる KL1 の処理系である.  
このコンパイラは, 
従来の KLIC が出力する C コードにほぼ沿った構造の Java コードを
出力する.  

まず, この作品が審査委員の予想をはるかに越える力作であったことを
強調しておきたい.  
コンパイラ本体は KL1 約 8200 行から成り, 
主要なライブラリは全て Java コード (約 5000 行) に書き換えられている.  
KLIC の配布パッケージに同梱されているテストプログラムの半数以上を
実行することができる.  

KLIC を改造し, Java コードを出力する KL1 コンパイラを作成する
というアイデア自体を思い付くのはそれほど難しくないと思われる.  
しかし, 実際にこのコンパイラを作成しライブラリを java で構築するためには, 
KLIC の実装や Java などに関する多くの知識と, 
そして何よりも若さにまかせた勢いが必要とされる.  

以上のことを考慮し, アイデアという点からは優秀賞が適当であると考えたが, 
審査員の予想をはるかに上回る力作であることを認め, 

審査員奨励賞(副賞 20 万円)を授与することとした.