« ICOCAでいこか | Main | スケジュール管理 »

Lightweight Language Ring そのに

随分、タイミングを逸したそのに、です

なみに、発表資料は、ここで公開されてます。

LLで関数プロぐらいミング

Haskellに風が吹いているということもあって、関数型プログラミングについてのパネルディスカッション。でも、リングの上の人はまだしも、下はどれだけついて行っていたのか・・・? こんな話題が

副作用について
  • ホントにないと、やっぱりどうしても書けない(書きづらい)というものはある。
  • Haskellのモナドはそれを非常にうまい具合に隠蔽しているが、その結果、モナドはやっぱり難しい
  • ま、あるならある、ないならないとはっきりして置いた方が心構え的には、ラク(?)
高階関数
  • 関数型がどうのこうのというより、イマドキないと困るでしょ。 mapがないからJava書いてるとイライラする
  • むしろ、OOに親和性のある概念なんじゃないの?
  • 型がない言語でやると酷い目に合うよね
型について
  • 型有りいいでしょ?型を書くのがめんどくさいっていうけど、型を書くのがむしろプログラミングの本質じゃないの?型を考えてると、処理がまとまってくるんだけど
  • でも、duck typeしたいことも多いじゃない?
宣言的記述
  • 要するに、抽象度を上げるってことだよね? (パラダイムが変わってるわけじゃないってこと?)
  • 行き着く先は、仕様記述言語。絶対にバグを出せない、しょーもないバグでも出したら億単位で金が飛んでいくところは、仕様記述言語で書いてるらしい。それで成立しかけてるぐらい、もう計算機は速くなった。具体的な手続きなんて人間が書くべきじゃない
  • 仕様記述言語、いいよね~(憧れの眼差し)
Lazyな評価
  • 別に関数型に必要な機能じゃない
  • ここぞというときに使えればいいと思う。常にLazyだと頭がついていかない
  • デバッグが大変。printfデバッグはほとんど意味がない
その他
  • OZって言語にちょっと注目してる
  • (会場からの質問)C++のテンプレートとかを見ると、C++は関数型言語になったと思うが?
  • C++いいよね~。でも、本が分厚いから・・・

じゃんけん2.0

LL Saturdayのときの「じゃんけんでLLの王者を決めよう」企画の第2段。 TCP/IPでサーバとやりとりしてじゃんけんをするクライアントをいろんなLLで書いて対決しようという企画。出場した言語は

  • Ruby
  • Action Script
  • Javascript
  • awk
  • Python

の5言語。ただし、ネットワーク周りも別にどの言語もすごく簡単に実装してしまっていて(いや、awkはそうでもないかも)、なかなか仕様が決まらなかったにも関わらず、ほぼ1、2日で作っちゃったらしい。じゃあ、どこに凝るかというと戦略か、表示部分か・・・ということになりますわな。Action Scriptはマイク入力で手が変わるというような仕掛け。awkは読み込ませるテキストで手が変わるような仕掛け。実戦では「走れメロス」を使用(笑)。Rubyは表示部分をRuby/DLでメモ帳に出すように前の晩に仕込んだらしい(その際、バグを入れてしまったらしく、じゃんけんはすごく弱かった)。

いろいろとみんなが趣向を凝らす中、抜群のウケをさらったのはPython。なんと、作ったスクリプトをワンライナ化してしまったのです。いや、これがPerlやRubyならさほど驚かず、「アホやなー」で済んだかもしれないのですが、インデントが構文に含まれるPythonとなると・・・。これは是非、発表資料を見てください。

|
|

« ICOCAでいこか | Main | スケジュール管理 »

パソコン・インターネット」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/47905/11782667

Listed below are links to weblogs that reference Lightweight Language Ring そのに:

« ICOCAでいこか | Main | スケジュール管理 »