Gauche Night

5/9(水) 新宿 Naked Loft にて開催された Gauche Nightに参加しました。
適当にメモってたのをそのまま貼ります。

18:40 ごろについた。

1時間くらい御飯とお酒。味濃かった。。

19:30開始

GaucheFestの成果物を発表ということだったらしい。

司会とパネラー入場

えんどうさん、黒田さん、川合さん、小飼さん、野田さん、山下さん
の順番で並ぶ。

色紙

始める前に、一番遠い人にサイン色紙が。
山口から来られたそうで。
パネラー全員の作者のサイン色紙をを贈呈。でかい。

OnLisp訳者の野田さん 若い。。

  • カンパイ
  • まつもとさんコール (テレビ電話)
  • 伊東さんにOnLispの感想を、syntax-case と比較して考えるためになる。

山下さんHaskeller

  • マクロは関数でかけば。
  • 遅延評価があれば、95%は関数で書ける。
  • Yコンビネータってどうかくの? (型があるのでHaskellはだーめ)
    • lisper はマクロの機能だけじゃなくてスピードが欲しい!
  • まつもとさん映る
    • 回線の調子がわるいそうで、こちらの音も聞こえなかたぽい。。
  • (shiro) VMレジスタをいくつが最適なのか調べるときの話。
  • (黒田) プラットフォム非依存のことかんがえたことないでしょ。
  • 関数コールはコストが高いよ。。
  • (小飼) perl6ではLispっぽいマクロができう
  • (Matz) マクロか関数か変数かわからなくなっちゃ
    • 作者の知らないところで文法が増えるのはいや
  • (黒田) Paul Graham興味ない
  • Perlien (Perl 使い?)
    • Rubyになぜuseがないのか?requireはあるのに。
    • semanticsを変えたくない
      • (yes)

黒田さん Internatilnal Lisp Conference

  • 125人 25人がUS。日本人6人南ア3人
  • そういえばALU 明日(5/10) AM7時から
  • Proceedings回覧。
  • Gaucheの実装に関する論文があるなと思ったら川合さん
  • frantz.incの人 lispアセンブラ 絶賛
  • IPv4の比較がBigNumになっちゃう。
  • RDFデータベース、コンスを隠す?
  • practicalな話ってのはどういう意味?
    • Application Orientedな話が多いのでたのしい
    • Liskell
  • gauche プログラミング刊行
  • karettaで本書いてね

R6RSについて

  • 2,3年かかりそう。Unicode対応でもめまくり
  • 非互換な変更がはいる

Scheme5つの誤解

  • 黒板にしかつかえないオモチャ
  • 貧弱
  • 本当のマクロ
  • パッケージがない
  • メシが喰えない
  • 誤解じゃないんでは? (黒田さん)
  • コンパイラが無い?(仕様にはない)
  • 逆にCL以外にコンパイラが仕様でない言語はない(shiro)。
  • スターリンについて。コンパイルが遅い
    • sqrt -1 は?-1のチェックが入ってるからそこから判断
  • Scheme でパッケージ管理。R6RSから
    • (黒田さん) foo パッケージと foo 関数は別の名前空間ってこと???
    • 別レイヤーでやってる!

マクロ合戦

  • 黒板登場
  • hygienicマクロ&パターンマッチ
  • 環境を考慮して展開しなきゃいかん
  • 実装をかくと論文がいくつもかける (そうなんですか)
  • 事実上別言語 (Brainf*ck)
  • syntax-case についてshiroさんは首をかしげる
  • でも声のおおきい人は推進
  • datumとtextのマッピング
  • 黒田さん
    • (+ 1 2 3)
    • (+ . (1 2 3)) エラー?
  • CL

string => s-exp => 評価 (CL)

string => (内部表現)+ => 評価 (Scheme)

パターンマッチと正規表現

  • Commmon Lispにも型推論があればつかうのに (やました)
  • 正規表現。文字列リテラルに書かなきゃならん、ELispとか。
  • Gaucheは、Perlを参考に。スクラッチでかいた。
    • 当時はmultibyte対応してるのがなかったそうな。
  • 植山さんはどうしてる?他の方法で解決しちゃう。
  • (まとめ)Lispに対する普通人とLisperのギャップがうまればうれしい (野田)

現実世界の状態とプログラミング世界の状態のギャップ (Matz->nobsunだったのか?)

  • 世界->世界のマッピングとかんがえれば状態じゃなくてもいいんでは
  • 引数としてわたすためにはMonadなりを導入していないと頭の切り替えのたすけが必要
  • どっちもできるようにしてほしい(perl6)
  • 部品をかくのは得意、複雑なものは…。
    • でも単純に思えるように書くのは大事
  • 他の物からのmappingを考えるから混乱する。
    • もともとやりたかったこと書かなきゃだめ。
  • Pugshaskell…。

Enjoy AST (Abstract Syntax Tree)

  • プログラムは木。木。
  • read/evalがわかれていない言語が多いのはなぜ?
  • systaxがデータなのはlispだけ!
    • perlも5からそうらしい。

未来のLisp、未来のProgramming Language

  • 黒田さん:
  • 野田さん
    • ライブラリとコアを分離すればなんでもいい
    • hashはライブラリでええやん。配列でええやん
    • implementation independentにかきたい。
  • 小飼さん
    • コアの人は死んだらだいじょうぶ?Perlは大丈夫
  • 山下
    • pure functionでかければいい。パフォーマンスはいらん。
  • オマケ
    • 言語書かなくてもいいようにならないかな。
    • ウィトゲンシュタイン:言語は言語でないと伝えらんれない(黒田さん)

すごいhackするぜ

  • 黒田:基本をしっかり。社会人として。時間をまもる。
  • 川合:Gaucheにいれたいアイディア。アプリケーションをかきたい。人生短かい
  • 小飼:Hack より上をいきたい。財産になるHackをしたい。financeをhack?
  • 野田:普段つかえる環境にない。web上でlispをかける環境つくってます。(地獄Lisp。。)
  • 山下:haskellにクオートをいれたい。参照透明性を壊さないようにしたい。
    • template haskell ghaskell? semi-firstclassを扱う。
  • えんどう:karetta.jp 本をかけるだけではつまらん。変な機能をいっぱいれたい。

デモ

ちょと短かったな

mephisto
  • LLにもでてた人
  • GLUT
  • util.stream
  • 全部健全なマクロ
  • 制約 (?)
  • 曲に合わせて動く
  • 3年前からデモってます
小黒さん gauche-rfb
  • VNCプロトコロル
  • lifegame ブラウザからもok
  • リアルタイムに表示が。
  • 機能はBASIC並
  • リモートスライド
  • 魔法言語 リリカル☆Lisp
  • 黒板に文字認識!
  • (= 3 (+ 1 2))
  • => #t
植山さん PEG (parser combinator library)
  • 正規表現開発者
  • PEG 再帰下降パーザ
  • CSV のパーザ
  • 同じことは関数で抽象化 char, many
  • 日付パーザ
  • 来週金曜日の午後3時
山田さん speedy gosh
  • 音楽?
  • 2回目の起動を早くします。
  • G-a-u-c-h-e-N-i-g-h-t-や-っ-て-ま-す
  • Gaucheの20倍!
はやしけんたろう PDF
  • libharuをc-wrapperで呼べばできたけど。
  • 対応していないフォントがあった
  • 先月からはじめました。
伊東 class-partitioning-class on kafua
  • 論文検索
  • 永続クラスを参考に。。
    • 実装は参考にならん
  • Mopisfreedamll
備前(び) Kahua-S5(仮)
  • プレゼンらいぶらり
  • 400Mのパワーポイントを全業務で使ってた過去が。
  • S5 スライドショーフォーマット
  • S5は仮。マルチフォーマットにする。

5/24 19:00-21:00「Kafuaプログラミング入門」

終了後

  • 野田さんと川合さんにサインもろた。
  • 濃い話でもりあがる。
  • 終電(00:38)で帰ったけど、残った人はどうしたんだろん。

スタッフの皆様お疲れ様でした。

次はもう少し勉強していかないとな。。。
とりあえずOn Lisp読み終える。