Soumettre la recherche
Mettre en ligne
Scalaで学ぶ関数型言語超入門
•
Télécharger en tant que PPTX, PDF
•
11 j'aime
•
7,490 vues
yujiro_t
Suivre
訂正版出しました! こっちをどうぞ! http://www.slideshare.net/yujiro_t/scala-36095251
Lire moins
Lire la suite
Ingénierie
Signaler
Partager
Signaler
Partager
1 sur 42
Télécharger maintenant
Recommandé
関数型勉強会のスライドの改訂版
Scalaで学ぶ関数型言語超入門
Scalaで学ぶ関数型言語超入門
yujiro_t
Scalaで萌える関数型プログラミング[完全版]
Scalaで萌える関数型プログラミング[完全版]
Ra Zon
2012/11/24(土) 「第2回 関数型言語勉強会 大阪」での発表スライドです。
Scalaはじめました!
Scalaはじめました!
Asami Abe
Java使いにとっての関数
Java使いにとっての関数
amkt922
2014/02/08(土) Scala関西ビギナーズ 第3回にて発表。 Scala関西ビギナーズWiki https://github.com/SAMMY7th/scala_kb/wiki
Scala再入門 @2014/02/08 Scala関西ビギナーズ第3回
Scala再入門 @2014/02/08 Scala関西ビギナーズ第3回
Asami Abe
外部向け勉強会 ipros tech meet up で行ったscalaハンズオンの資料です。 内容はscala触ったことがない、かなり初心者向けとなっています。
Scala勉強会 初心者向けハンズオン前編
Scala勉強会 初心者向けハンズオン前編
takeuchi-tk
こわくないScala
こわくないScala
こわくないScala
FScoward
とある場で発表した際の資料を修正したものです。 Vim scriptとJavaとHaskellと題していますが ほぼHaskellです。 マスコットアプリ文化祭( http://pronama.github.io/mascot-apps-contest/2014/ ) ずん子ちゃん枠で参加します。
Vim scriptとJavaとHaskell
Vim scriptとJavaとHaskell
aiya000
Recommandé
関数型勉強会のスライドの改訂版
Scalaで学ぶ関数型言語超入門
Scalaで学ぶ関数型言語超入門
yujiro_t
Scalaで萌える関数型プログラミング[完全版]
Scalaで萌える関数型プログラミング[完全版]
Ra Zon
2012/11/24(土) 「第2回 関数型言語勉強会 大阪」での発表スライドです。
Scalaはじめました!
Scalaはじめました!
Asami Abe
Java使いにとっての関数
Java使いにとっての関数
amkt922
2014/02/08(土) Scala関西ビギナーズ 第3回にて発表。 Scala関西ビギナーズWiki https://github.com/SAMMY7th/scala_kb/wiki
Scala再入門 @2014/02/08 Scala関西ビギナーズ第3回
Scala再入門 @2014/02/08 Scala関西ビギナーズ第3回
Asami Abe
外部向け勉強会 ipros tech meet up で行ったscalaハンズオンの資料です。 内容はscala触ったことがない、かなり初心者向けとなっています。
Scala勉強会 初心者向けハンズオン前編
Scala勉強会 初心者向けハンズオン前編
takeuchi-tk
こわくないScala
こわくないScala
こわくないScala
FScoward
とある場で発表した際の資料を修正したものです。 Vim scriptとJavaとHaskellと題していますが ほぼHaskellです。 マスコットアプリ文化祭( http://pronama.github.io/mascot-apps-contest/2014/ ) ずん子ちゃん枠で参加します。
Vim scriptとJavaとHaskell
Vim scriptとJavaとHaskell
aiya000
Scala is-unscared
Scala is-unscared
Kota Mizushima
Scalaはこわくない(たぶん)
こわくないScala
こわくないScala
Kota Mizushima
第21回オープンラボ岡山の発表スライド http://openlab.okaya.ma/wiki.cgi?page=%CA%D9%B6%AF%B2%F1%2F%C2%E8021%B2%F3
磯野ー!関数型言語やろうぜー!
磯野ー!関数型言語やろうぜー!
Ra Zon
関数型もモナドも分からなくてもScalaと言う言語は便利らしい
関数型もモナドも分からなくてもScalaと言う言語は便利らしい
ke-m kamekoopa
静的型付けの関数型言語のすばらしさに加えて、HaskellやOcamlにはないScala独特の機能について紹介した資料です。
Scalaノススメ
Scalaノススメ
Yasuyuki Maeda
筑波大学計算機数学グループ春の館山合宿での講演「数学プログラムを Haskell で書くべき6の理由」の発表資料。実際の講演映像は https://www.youtube.com/watch?v=S4_7KVNA-Ww
数学プログラムを Haskell で書くべき 6 の理由
数学プログラムを Haskell で書くべき 6 の理由
Hiromi Ishii
学内発表会スライド
Scalaで学ぶ関数型超入門
Scalaで学ぶ関数型超入門
Yuichiro Takahashi
Phantom Type自体の説明はほとんどありません。Implicit parameterを使って、コンパイル時にごにょごにょやる方法を通し、型の表現によっていろいろできることを説明しています。
Phantom Type in Scala
Phantom Type in Scala
Yasuyuki Maeda
https://ngineerxiv.doorkeeper.jp/events/29760 用
Dark vol4 for_slideshare
Dark vol4 for_slideshare
ara_ta3
Lecture1
Lecture1
Eita Sugimoto
2015/11/21 2016年のAltJSについて語る会発表資料 http://kfug.connpass.com/event/21062/
Scala.js触ってみた
Scala.js触ってみた
Asami Abe
Gunma.web #5でやったLT資料 実際のLT時には非表示にしていたページを含む
「再代入なんて、あるわけない」 ~ふつうのプログラマが関数型言語を知るべき理由~ (Gunma.web #5 2011/05/14)
「再代入なんて、あるわけない」 ~ふつうのプログラマが関数型言語を知るべき理由~ (Gunma.web #5 2011/05/14)
parrotstudio
2016/05/28 Scala福岡 LT資料です。
ScalaでBacklogの通知bot作ったで
ScalaでBacklogの通知bot作ったで
Asami Abe
Scala development
Lets scala
Lets scala
smdkk
Rxjavaとoptionalで関数型androidしよう @Shibuya.apk #2
Rxjavaとoptionalで関数型androidしよう
Rxjavaとoptionalで関数型androidしよう
Fumihiko Shiroyama
Swift&Obj-C&Xcode開発周り勉強会 - 0x03で登壇した内容でつ。
Swiftで、かなり微妙な型クラス
Swiftで、かなり微妙な型クラス
Nobukazu Hanada
Scalalr
Scalalr
Scalalr
ichikaz3
第2回初心者Scala in F@N での発表資料。
Beginners Scala in FAN 20121009
Beginners Scala in FAN 20121009
Taisuke Shiratori
Quasar: Actor Model and Light Weight Threads on Java
Quasar: Actor Model and Light Weight Threads on Java
Taku Miyakawa
Currying
Currying
Akura Pi
関西関数型道場#01発表資料
Flang kkd1
Flang kkd1
florets1
https://d-cube.connpass.com/event/74106/
頑張りすぎないScala
頑張りすぎないScala
takezoe
Contenu connexe
Tendances
Scala is-unscared
Scala is-unscared
Kota Mizushima
Scalaはこわくない(たぶん)
こわくないScala
こわくないScala
Kota Mizushima
第21回オープンラボ岡山の発表スライド http://openlab.okaya.ma/wiki.cgi?page=%CA%D9%B6%AF%B2%F1%2F%C2%E8021%B2%F3
磯野ー!関数型言語やろうぜー!
磯野ー!関数型言語やろうぜー!
Ra Zon
関数型もモナドも分からなくてもScalaと言う言語は便利らしい
関数型もモナドも分からなくてもScalaと言う言語は便利らしい
ke-m kamekoopa
静的型付けの関数型言語のすばらしさに加えて、HaskellやOcamlにはないScala独特の機能について紹介した資料です。
Scalaノススメ
Scalaノススメ
Yasuyuki Maeda
筑波大学計算機数学グループ春の館山合宿での講演「数学プログラムを Haskell で書くべき6の理由」の発表資料。実際の講演映像は https://www.youtube.com/watch?v=S4_7KVNA-Ww
数学プログラムを Haskell で書くべき 6 の理由
数学プログラムを Haskell で書くべき 6 の理由
Hiromi Ishii
学内発表会スライド
Scalaで学ぶ関数型超入門
Scalaで学ぶ関数型超入門
Yuichiro Takahashi
Phantom Type自体の説明はほとんどありません。Implicit parameterを使って、コンパイル時にごにょごにょやる方法を通し、型の表現によっていろいろできることを説明しています。
Phantom Type in Scala
Phantom Type in Scala
Yasuyuki Maeda
https://ngineerxiv.doorkeeper.jp/events/29760 用
Dark vol4 for_slideshare
Dark vol4 for_slideshare
ara_ta3
Lecture1
Lecture1
Eita Sugimoto
2015/11/21 2016年のAltJSについて語る会発表資料 http://kfug.connpass.com/event/21062/
Scala.js触ってみた
Scala.js触ってみた
Asami Abe
Gunma.web #5でやったLT資料 実際のLT時には非表示にしていたページを含む
「再代入なんて、あるわけない」 ~ふつうのプログラマが関数型言語を知るべき理由~ (Gunma.web #5 2011/05/14)
「再代入なんて、あるわけない」 ~ふつうのプログラマが関数型言語を知るべき理由~ (Gunma.web #5 2011/05/14)
parrotstudio
2016/05/28 Scala福岡 LT資料です。
ScalaでBacklogの通知bot作ったで
ScalaでBacklogの通知bot作ったで
Asami Abe
Scala development
Lets scala
Lets scala
smdkk
Rxjavaとoptionalで関数型androidしよう @Shibuya.apk #2
Rxjavaとoptionalで関数型androidしよう
Rxjavaとoptionalで関数型androidしよう
Fumihiko Shiroyama
Swift&Obj-C&Xcode開発周り勉強会 - 0x03で登壇した内容でつ。
Swiftで、かなり微妙な型クラス
Swiftで、かなり微妙な型クラス
Nobukazu Hanada
Scalalr
Scalalr
Scalalr
ichikaz3
第2回初心者Scala in F@N での発表資料。
Beginners Scala in FAN 20121009
Beginners Scala in FAN 20121009
Taisuke Shiratori
Quasar: Actor Model and Light Weight Threads on Java
Quasar: Actor Model and Light Weight Threads on Java
Taku Miyakawa
Currying
Currying
Akura Pi
Tendances
(20)
Scala is-unscared
Scala is-unscared
こわくないScala
こわくないScala
磯野ー!関数型言語やろうぜー!
磯野ー!関数型言語やろうぜー!
関数型もモナドも分からなくてもScalaと言う言語は便利らしい
関数型もモナドも分からなくてもScalaと言う言語は便利らしい
Scalaノススメ
Scalaノススメ
数学プログラムを Haskell で書くべき 6 の理由
数学プログラムを Haskell で書くべき 6 の理由
Scalaで学ぶ関数型超入門
Scalaで学ぶ関数型超入門
Phantom Type in Scala
Phantom Type in Scala
Dark vol4 for_slideshare
Dark vol4 for_slideshare
Lecture1
Lecture1
Scala.js触ってみた
Scala.js触ってみた
「再代入なんて、あるわけない」 ~ふつうのプログラマが関数型言語を知るべき理由~ (Gunma.web #5 2011/05/14)
「再代入なんて、あるわけない」 ~ふつうのプログラマが関数型言語を知るべき理由~ (Gunma.web #5 2011/05/14)
ScalaでBacklogの通知bot作ったで
ScalaでBacklogの通知bot作ったで
Lets scala
Lets scala
Rxjavaとoptionalで関数型androidしよう
Rxjavaとoptionalで関数型androidしよう
Swiftで、かなり微妙な型クラス
Swiftで、かなり微妙な型クラス
Scalalr
Scalalr
Beginners Scala in FAN 20121009
Beginners Scala in FAN 20121009
Quasar: Actor Model and Light Weight Threads on Java
Quasar: Actor Model and Light Weight Threads on Java
Currying
Currying
Similaire à Scalaで学ぶ関数型言語超入門
関西関数型道場#01発表資料
Flang kkd1
Flang kkd1
florets1
https://d-cube.connpass.com/event/74106/
頑張りすぎないScala
頑張りすぎないScala
takezoe
Excel方眼紙爆発しろ!
Scalaで萌える関数型プログラミング[エッセンシャル版]
Scalaで萌える関数型プログラミング[エッセンシャル版]
Ra Zon
社内のチーム向けScala勉強会資料です。
Scala勉強会_2014_11_18
Scala勉強会_2014_11_18
Shuya Tsukamoto
Java ソースコードから情報を取り出す Java プログラムを作る演習の資料です. 更新版の資料が https://www.slideshare.net/TakashiIshio/ver101-193313140 にあります.
演習:プログラミング言語処理をやってみよう
演習:プログラミング言語処理をやってみよう
Takashi Ishio
Java ソースコードから情報を取り出す Java プログラムを作る演習の資料です.
演習:プログラミング言語処理をやってみよう (ver.1.01)
演習:プログラミング言語処理をやってみよう (ver.1.01)
Takashi Ishio
Scala基礎勉強会 懇親会LT
Scala基礎勉強会 懇親会LT
pocketberserker
Scalaがどんな言語なのかふんわりと把握できれば幸いです. 第二回は未定
Scala入門
Scala入門
Yoshifumi Takeshima
about list search algorithm
javaによる探索アルゴリズムとリスト探索
javaによる探索アルゴリズムとリスト探索
RabbitFoot141
Scalaで萌える関数型プログラミング[1.1.RC1]
Scalaで萌える関数型プログラミング[1.1.RC1]
Ra Zon
ナイーブツリーの入れ子集合
ナイーブツリーの入れ子集合
Akura Pi
2015/06/02に開催されたElixirの勉強会 Shinjuku.ex #10 の資料。 * イベント情報: http://shinjukuex.connpass.com/event/15229/ * PowerPointのファイルダウンロード: http://bit.ly/perfect_elixir_information_gathering 資料のライセンスはクリエイティブ・コモンズで、自己紹介ページのみBY・ND、それ以外は全てCCゼロ(いかなる権利も保有しない)です。必要に応じて自己紹介ページを取り除き、あとはご自由にご利用下さい。 改版を行った場合は、 http://twitter.com/keithseahus より、 #shinjukuex タグ付きでお知らせします。
パーフェクト"Elixir情報収集"
パーフェクト"Elixir情報収集"
Keisuke Takahashi
2015年5月27日の Lisp Meet Up presented by Shibuya.lisp #28 での発表「R について」のスライド PDF. Clojure から R を利用するライブラリ Rashinban を紹介し、Rashinban を支える技術として、Clojure と非 Java プロダクトとの連携、R をサーバ化する Rserve, protocols, multimethods, metadata について説明した。
Shibuya.lisp #28: 仮題: R について
Shibuya.lisp #28: 仮題: R について
tnoda
NL名古屋での発表資料です。発表ではExcel方眼紙で行いました。これはそれをPDFに変換したものです。 発表に使ったExcelファイルはこちら https://onedrive.live.com/redir?resid=C562DFDEB23518F0!2128&authkey=!ABEB2nl_ZrSQ45Q&ithint=file%2cxlsx
No more Legacy documents
No more Legacy documents
bleis tift
2013/08/24のLinq勉強会 #2での資料です。
Linq to XXXX(Reactive Extensionsの紹介)
Linq to XXXX(Reactive Extensionsの紹介)
Hiroshi Maekawa
Similaire à Scalaで学ぶ関数型言語超入門
(15)
Flang kkd1
Flang kkd1
頑張りすぎないScala
頑張りすぎないScala
Scalaで萌える関数型プログラミング[エッセンシャル版]
Scalaで萌える関数型プログラミング[エッセンシャル版]
Scala勉強会_2014_11_18
Scala勉強会_2014_11_18
演習:プログラミング言語処理をやってみよう
演習:プログラミング言語処理をやってみよう
演習:プログラミング言語処理をやってみよう (ver.1.01)
演習:プログラミング言語処理をやってみよう (ver.1.01)
Scala基礎勉強会 懇親会LT
Scala基礎勉強会 懇親会LT
Scala入門
Scala入門
javaによる探索アルゴリズムとリスト探索
javaによる探索アルゴリズムとリスト探索
Scalaで萌える関数型プログラミング[1.1.RC1]
Scalaで萌える関数型プログラミング[1.1.RC1]
ナイーブツリーの入れ子集合
ナイーブツリーの入れ子集合
パーフェクト"Elixir情報収集"
パーフェクト"Elixir情報収集"
Shibuya.lisp #28: 仮題: R について
Shibuya.lisp #28: 仮題: R について
No more Legacy documents
No more Legacy documents
Linq to XXXX(Reactive Extensionsの紹介)
Linq to XXXX(Reactive Extensionsの紹介)
Scalaで学ぶ関数型言語超入門
1.
Scalaで学ぶ関数型言語超入門 〜関数型言語の魅力〜
2.
はじめに 素数アルゴリズムで見る オブジェクト指向言語との違い
3.
エラトステネスの篩って? • 素数を求めるときに使うアルゴリズム • プログラミングの問題なんかによくでてくる •
古代ギリシャの数学者であるエラトステネス が考案したのでこう呼ばれている。
4.
内容 • 整数のリストに2からxまでの数を入れる • リストの先頭に行き、その数の倍数をふるい 落とす。 •
リストの先頭の値がxの平方根になるまで繰 り返す。
5.
ベリーシンプル!!!!!
6.
では早速コードを見てみましょう!
7.
Javaでの実装例
8.
少しごちゃごちゃしていますね・・・ Oh No!
9.
ではこれをScalaで書くと・・・・?
10.
Scalaでの実装例
11.
たったこれだけ!?
12.
比較 Java Scala
13.
すばらしい!!!
14.
なぜこんな魔法のようなことができる のか? どうしてこんなに短く書けるのか? 気になりませんか? 空気読んで!
15.
勿論気になりますよね??
16.
それではご説明いたしましょう! ようこそ! 関数型の世界へ!
17.
関数型言語について 〜関数型言語の種類や利点、特徴〜
18.
そもそも“関数型言語”って何ぞや?
19.
関数型言語とは! 関数型プログラミングに向いた特徴を持つプログラミング言語、 関数型プログラミング言語である! 引数に関数を作用させて計算をおこなうことから、作用型言語 ともいう! (Wikipediaより抜粋)
20.
はい?
21.
どういうこと?
22.
関数型言語の特徴 • 基本的に値がイミュータブルである(変更不能) • 関数がファーストクラスオブジェクトである •
高階関数 • 関数の部分適用、カリー化 • 遅延評価 • Option型 • 再帰 • 型推論 • 関数が副作用を持たない(純粋関数型)
23.
関数型言語ってどんなんがあんの?
24.
代表的な関数型言語 • 純粋関数型言語 • Haskell •
Miranda • 非純粋関数型言語 • ML • Scala • OCaml • Erlang • Swift(?)
25.
じゃあ関数型言語を使うと何が嬉しいの?
26.
関数型言語のメリットその1 実行時エラーが圧倒的に少ない
27.
実行時エラーが少ない • 基本的にコンパイル時にほとんどのエラーを 検出してくれる。 • Option型の使用により、ぬるぽで落ちる事は 全くない(多少意識してコーディングする必要 はある) •
値が変更不能、また関数が細かいのでバグ が発見しやすい
28.
コードが短く、シンプルになる 関数型言語のメリットその2
29.
コードが短くシンプルになる • 関数を処理毎に細かく分け、それをつなげた り合成したりしてプログラミングしていくので、 コードが短くてすむ。 • 上で説明したように大きな関数も、細かい関 数から成り立っているのでいくつか関数を理 解すれば他の関数もスッと理解していく事が できる。
30.
関数型言語のメイン、関数について 〜関数と高階関数〜
31.
関数の特徴 • 同じ入力に対して必ず同じ出力を返す。 • 関数は変数と同じく引数や戻り値として扱う 事ができる。 •
また、変数に格納する事も、関数同士を足し 合わせて新しい関数を作る事も可能
32.
オブジェクト指向のメソッドにくらべて 非常に柔軟性が高いです!
33.
じゃあ高階関数って? 後悔→
34.
高階関数とは? • 引数に関数を取ったり、戻り値として関数を 返す関数の事。 • 代表的な高階関数にmap、filter、foreachなど がある
35.
mapを使った例を見てみましょう!
36.
これが高階関数(map)だ!
37.
なんだか地味ですね(; ^ω^)
38.
解説! • mapとはコレクションの中身を第一引数にとり、 関数を第2引数にとる高階関数です。 • ここではリストの中身をすべて2倍しています
39.
まとめ • 関数型言語は小さな関数を組み合わせてプ ログラミングしていく! • 関数の柔軟性が高いので、複雑な処理もシ ンプルに書ける! •
コードの記述量が減る! • 実行時エラーがほとんどない! • 読みやすい! • 高階関数はとても重要!
40.
まとめ2 Scala最高!!!!!
41.
これを期にぜひ関数型言語を触って みてください!
42.
ご清聴ありがとうございました!
Télécharger maintenant