関数型言語勉強会 大阪 #2 行ってきた

土曜に!
今回はプレゼン内容とかは普通に公開されてると思うので、プレゼン資料にない質問とか感想をメインにメモを写す事に。内容自体については他のまとめとか見てください。

全体的な感想とか

  • 面白かった!第一回がすごい「こわい」らしかったのでどうなるかと思いきや、第二回はその反動か「こわくない」方向に行ってたようだった。
  • 適当に空いてる席に座ったら、隣が村主さん、斜め後ろがいけがみさんだった。村主さんといけがみさんはすごいH本の話されてた。村主さんと話できてよかった!
  • ぽんこれさんとちょっと話した。いかっつぁんさんも来てた筈だけど人の顔をおぼえるのが苦手で見付けられなかった…。

オープニング

  • 極簡単な挨拶ではじまる。

乙女ゲーを支える技術

  • 別勉強会でやった内容と基本的に同じとの事。
  • 内容も話も面白かった。
  • 質問:プレゼンどうやって操作してるの?
    • 回答:後ろに持ってるiPhoneでページめくり。乙女ゲーのデモは事前に録画したもの、との事(リアルタイムに乙女ゲー操作はしてないとの事)
  • 質問:入社二日目からこのプロジェクト参加という事だが、入社前からフリュー社でそういう企画が立ち上がってたのか?
    • 回答:yes。みんなJavaでの開発に限界?を感じていて、そういう企画が立ち上がった、との事
  • 質問:Scalaに移行した際のテストコードとかはどんな感じ?
    • 回答:テストツールはJavaのとあんまり変わらない感じ?特にScalaだからうれしいという事はなかったそう
  • 質問:フリュー社的には今後Scalaになりそう?
    • 回答:yes。とりあえずソシャゲーのバックエンドはScalaとの事
  • 質問:今後どれぐらい長くScalaを使いそう?
    • 回答:(この質問への回答は自分のメモが曖昧で@daiksyさんの回答と微妙に違うかも、違ってたらごめんなさい)会社的には、Scalaが時代遅れになるまで。個人的には、飽きるまで?
  • 質問:このプロジェクトは成功した訳だけど、この成功の要因は「Scalaを選択したから」ではなく、他の要因(ペアプロとかメンバーの士気とか)による成功では?
    • 回答:そうかも。(もっと色々回答されてた筈だけど自分のメモにはこれだけしか残ってなかったすいません)
  • 質問:全員で統一をとるのはどうやった?
    • 回答:規約を決めてそれを守るのではなく、全員が設計に参加する事で統一を取った。全てのメンバーが、「この部分は自分は知らない」という事がないようにした。

OCamlでpfffを拡張

  • pfffは「ぷふ」
  • 「pull-reqしなければどうということはない!」
  • エア参加!
  • 内容は自分も実感してる事であり、話も面白かった。

JavaからScala

  • 質問:オススメ学習リソースにあったオンライン講座は英語?
    • 回答:yes。けっこうなまってる。フランス語圏の人らしい

PythonistaがOCamlを実用する方法

  • 質問:(OCamlからPython呼ぶのは)OPyCamlでもできると思うけど?
    • 回答:OPyCamlも試したけど、依存するものが多かったので…perlとか必要なので
  • 質問:FFIする時にPythonOCamlでIntの大きさ(bit数)ちがうと思うけど大丈夫?
    • 回答:今のところ対応してないとの事。pythonだと標準で多倍長

F#とErlangで簡単なゲームを作ってみている

  • 話面白い
  • TDDブートキャンプ大阪3.0 2013年1月12-13日
  • 「Expert F#」本の読書会の紹介
  • 質問:自己紹介のところで「関数型言語で人生変わった」ってあったけど、具体的にどうなった?
    • 回答:とある名古屋でTDDのイベント行ったら、色々とすりこまれた…
  • 質問:Erlangどうよ?
    • 回答:まだ使い始めて一ヶ月ぐらいなのではっきり言えないが、動的型付けでコンパイルできてビヘイビアがあってサーバを書きやすいところが良い
  • 質問:自己紹介見てるとメジャーな関数型言語を色々やってるけど、マイナーな関数型言語はどうですか?
    • 回答:今SML#やってる、あとCOQやりたいと思いつつ時間がない

Scalaはじめました!

  • Scalaビギナーズ」勉強会やります。会場オオサカンスペース。裏に「SCALA」という店あり
  • 質問:どれぐらい勉強すすんだ?
    • 回答:コップ本読み進め途中
  • 質問:SCALAで何食べた?おいしかった?(お店発見者からの質問)
    • 回答:イタリアンの店だった。昼にグラタン、サラダを食べた、美味しかった
  • 質問:どの辺でつまづきそう?
    • 回答:まだそこまですすんでない。でも最初から全部Scala的に書こうとすると挫折するかも?

Better C# の脱却を目指して

  • 「名古屋(こわくない)」
  • 「|||>」演算子は「パイプラインえんざんしさんぼんばん」と読まれていた
  • NGK2012B 名古屋 12/8(土) いろんなコミュニティの人が集まる、午前はLT、午後は忘年会
  • 質問:結局引数順を間違う可能性はあるのでは?
    • 回答:(数は少なくなるので…という事を質問者が理解したのか、質問は途中で終わってしまった)
  • 質問?:C#とF#での型定義の意識の違い。C#だと使い捨ての型定義をしづらい、#Fだとそれが使いやすい
  • 質問:型とインターフェースはnearlyだと思うけどどう?
    • 回答:こわい人がいるので厳密には違うんだけど、ニュアンス的にはnearlyでいいと思う。でもJavaのインターフェースとはnearlyではない
  • 質問:F#の型定義のコードで「type Wheather = Sunny | Cloudy | Rain | HeavyRain」ってなってたところがよくわからない
    • 回答:これはF#独自の機能(ちょっとこの質問のところはメモが曖昧)
  • 質問:なんでstaticにしてるの?
    • 回答:F#のなんかいろいろ都合で(メモしきれてない)。こうする事で名前空間を綺麗に保てる

Haskell入門書を読んだその後は

  • 「フグれ!」
  • 明石Haskell 第二回 12/16(日) 会場は明石駅すぐ近く
  • 質問:懇親会は明石焼き
    • 回答:食べましょうか?第一回でも食べたけど
  • 質問:明石の人多い?
    • 回答:大阪の人が多い、明石姫路もちらほら
  • 質問:初心者の人への対応とかどんな感じ?
    • 回答:手取り足取り的な
  • 質問:Haskell興味あるけどやった事ない、みたいな人が来てもok?
    • 回答:まだ第二回の内容が決まってないので、それ次第?

たのしい高階関数 λ

  • 第一回の続きらしい
  • 「mapはベホイミベホマラーにできるもの」「filterはレベル5デス」「fold系はキングスライム
  • 質問:リストの図のtail部がNILを含んでない
    • 回答:後で直しときます
  • 質問:foldlとfoldrのスタックオーバーフローするしないの話
    • 回答:正格評価のScalaと非正格評価のHaskellで違う、Haskellはfoldl'がある、的な話だったと思う確か

JavaScript関数プログラミング

  • JSにはカリー化専用にbindというmethodが関数にあるという事を初めて知った

いけがみさん告知

  • 1Fの本屋ですごいH本売ってるよ!おみやげにどう?
  • このすごいH本の勉強会が来週(もう今週)の金曜にあるよ。もう満員だけど、Lingrで夜の部をやるので興味ある人はどうぞ、との事

閉会