37
君(Scalaz僕(FSharpxに似て いる pocketberserker 2012 10 20

Scala基礎勉強会 懇親会LT

Embed Size (px)

Citation preview

Page 1: Scala基礎勉強会 懇親会LT

君(Scalaz)は僕(FSharpx)に似ている

pocketberserker

2012年 10月 20日

Page 2: Scala基礎勉強会 懇親会LT

自己紹介

• 中山 /なかやん /ぺんぎん• @pocketberserker / id:pocketberserker• どこにでもいるふつーのサーガ大学院生• F# / Haskell / Erlang /(Scala) /テスト• 最近はFSharpxを触ってます

Page 3: Scala基礎勉強会 懇親会LT

タイトルは釣り?

1. 立場は似ている?

2. 状況も似ている?

3. 触っている人口数は圧倒的に異なる

Page 4: Scala基礎勉強会 懇親会LT

タイトルは釣り?

1. 立場は似ている?

2. 状況も似ている?

3. 触っている人口数は圧倒的に異なる

Page 5: Scala基礎勉強会 懇親会LT

タイトルは釣り?

1. 立場は似ている?

2. 状況も似ている?

3. 触っている人口数は圧倒的に異なる

Page 6: Scala基礎勉強会 懇親会LT

タイトルは釣り?

1. 立場は似ている?

2. 状況も似ている?

3. 触っている人口数は圧倒的に異なる

Page 7: Scala基礎勉強会 懇親会LT

Scalaz

“Scalaz: Type Classes and Pure Functional DataStructures for Scala”

Page 8: Scala基礎勉強会 懇親会LT

Scalaz

“Scalaz: Type Classes and Pure Functional DataStructures for Scala”

Page 9: Scala基礎勉強会 懇親会LT

FSharpx

“FSharpx is a library for the .NET platformimplementing general functional constructs on top

of the F# core library.”

Page 10: Scala基礎勉強会 懇親会LT

FSharpx

“FSharpx is a library for the .NET platformimplementing general functional constructs on top

of the F# core library.”

Page 11: Scala基礎勉強会 懇親会LT

GitHubで調べてみた(本日時点)

• Scalaz. . . Contributors:21, fork:120• FSharpx. . . Contributors:16, fork:44

Page 12: Scala基礎勉強会 懇親会LT

GitHubで調べてみた(本日時点)

• Scalaz. . . Contributors:21, fork:120

• FSharpx. . . Contributors:16, fork:44

Page 13: Scala基礎勉強会 懇親会LT

GitHubで調べてみた(本日時点)

• Scalaz. . . Contributors:21, fork:120• FSharpx. . . Contributors:16, fork:44

Page 14: Scala基礎勉強会 懇親会LT

  

実際全然違う?

Page 15: Scala基礎勉強会 懇親会LT

でも共通している部分もある

Page 16: Scala基礎勉強会 懇親会LT

どのあたりが?

Core部分は割と似ているものが並んでいるというわけでここからはCoreの話

Page 17: Scala基礎勉強会 懇親会LT

どのあたりが?

Core部分は割と似ているものが並んでいるというわけでここからはCoreの話

Page 18: Scala基礎勉強会 懇親会LT

機能一部抜粋

• Validation• Lens• Iteratee• etc. . .

Page 19: Scala基礎勉強会 懇親会LT

なぜ似ている?

Haskell参考にしているし、FSharpxはScalazも参考にしていたりする

Page 20: Scala基礎勉強会 懇親会LT

なぜ似ている?

Haskell参考にしているし、FSharpxはScalazも参考にしていたりする

Page 21: Scala基礎勉強会 懇親会LT

というわけで

僕(FSharpx)が君(Scalaz)に似ている

Page 22: Scala基礎勉強会 懇親会LT

というわけで

僕(FSharpx)が君(Scalaz)に似ている

Page 23: Scala基礎勉強会 懇親会LT

ちなみに

• ScalazからFSharpxに移植しようとすると詰む

• 文法や機能が違いすぎる• なのでHaskellからFSharpxに移植するほうが楽

• とはいえ、妥協点は常に探らねばならない

Page 24: Scala基礎勉強会 懇親会LT

ちなみに

• ScalazからFSharpxに移植しようとすると詰む

• 文法や機能が違いすぎる

• なのでHaskellからFSharpxに移植するほうが楽

• とはいえ、妥協点は常に探らねばならない

Page 25: Scala基礎勉強会 懇親会LT

ちなみに

• ScalazからFSharpxに移植しようとすると詰む

• 文法や機能が違いすぎる• なのでHaskellからFSharpxに移植するほうが楽

• とはいえ、妥協点は常に探らねばならない

Page 26: Scala基礎勉強会 懇親会LT

ちなみに

• ScalazからFSharpxに移植しようとすると詰む

• 文法や機能が違いすぎる• なのでHaskellからFSharpxに移植するほうが楽

• とはいえ、妥協点は常に探らねばならない

Page 27: Scala基礎勉強会 懇親会LT

ScalazにあってFSharpxにないもの

• 技術的にあきらめているもの• Freeとか IOとか云々

Page 28: Scala基礎勉強会 懇親会LT

ScalazにあってFSharpxにないもの

• 技術的にあきらめているもの

• Freeとか IOとか云々

Page 29: Scala基礎勉強会 懇親会LT

ScalazにあってFSharpxにないもの

• 技術的にあきらめているもの• Freeとか IOとか云々

Page 30: Scala基礎勉強会 懇親会LT

共通の問題点

ライブラリが巨大すぎる!

Page 31: Scala基礎勉強会 懇親会LT

というと?

• Haskellだったら十数パッケージに分解されている

• それが 1個に集約されているということは. . .• うん、まぁ. . .

Page 32: Scala基礎勉強会 懇親会LT

というと?

• Haskellだったら十数パッケージに分解されている

• それが 1個に集約されているということは. . .• うん、まぁ. . .

Page 33: Scala基礎勉強会 懇親会LT

というと?

• Haskellだったら十数パッケージに分解されている

• それが 1個に集約されているということは. . .

• うん、まぁ. . .

Page 34: Scala基礎勉強会 懇親会LT

というと?

• Haskellだったら十数パッケージに分解されている

• それが 1個に集約されているということは. . .• うん、まぁ. . .

Page 35: Scala基礎勉強会 懇親会LT

究極の問題

開発者全員がFSharpx(Scalaz)を使えるのか!?

Page 36: Scala基礎勉強会 懇親会LT

まとまっていないまとめ

• FSharpxはScalazに似ている(部分がある)• 言語の勉強には最適(な気がする)• ライブラリがファットマン• プロジェクトメンバー全員の錬度が高くないと仕事では. . .

Page 37: Scala基礎勉強会 懇親会LT

続きはゆるふわF#勉強会(?)で!