お知らせ connpassではさらなる価値のあるデータを提供するため、2024年5月23日(木)を以ちましてイベントサーチAPIの無料での提供の廃止を決定いたしました。
2024年5月23日(木)以降より開始予定の「connpass 有料API」の料金プランにつきましてはこちらをご覧ください。
なお有料の対象となるのはAPIのみであり、connpassのサービスにつきましては今後も無料でご利用いただけます。

このエントリーをはてなブックマークに追加

8月

9

【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)について

Elixirの強力なパターンマッチ。ifやcase...どちらが速いのかを測定してみる

主催 : OKB(sing_mascle69)

【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)について
ハッシュタグ :#清流elixir
募集内容

参加枠

無料

先着順
5/8

申込者
sing_mascle69
murakami_motokazu_1213
(退会ユーザー)
Papillon6814
g_kenkun
申込者一覧を見る
開催日時
2019/08/09(金) 19:30 ~ 21:30
募集期間

2019/08/02(金) 21:00 〜
2019/08/09(金) 19:00まで

会場

お気軽会議室名古屋丸の内ブルー

愛知県名古屋市中区丸の内2丁目18-20

マップで見る 会場のサイトを見る

イベントの説明

第10回清流elixirコミュニティ勉強会の概要

トピック

まだまだ若いコミュニティですので至らぬ点も多いですがどうか宜しくお願いします
わりとゆるくやってますのでお気軽にお参加ください
主催者 => 参加者という一般の勉強会ではなく
主催者 <=> 参加者という双方で情報共有できるような勉強会を目指しております

前回は「Elixir大入門会」を開催させて頂きまして、6名の方にご参加頂きまして
参加人数の過去最高記録を更新することが出来ました。ありがとうございます!!
今後も定期的にElixir入門会(内容は同じになるかと思います)を開催していくつもりですので
開催の時期につきましては改めて告知をさせて頂きます

入門会ではどんな内容をやっているのかを知りたい方は詳細を私のブログにまとめてますのでぜひご一読下さい
【レポート】第9回清流elixir勉強会を開催しました【ウェルカムElixir入門会】

今回の内容について

Elixirには強力なパターンマッチが用意されています
このパターンマッチの性能を引き出すことによって、あらゆる処理をシンプルに気軽に記述することが可能です

defmodule Sample do
  #パターンマッチを使う記述
  def pattern_match("banana") do
    110
  end
  def pattern_match("apple") do
    90
  end

  #caseを使う記述
  def if_or_case(fruit) do
    case fruit do
      "banana" -> 110
      "apple" -> 90
    end  
  end
end

res = [
  Sample.pattern_match("banana"),
  Sample.pattern_match("apple"),
  Sample.if_or_case("banana"),
  Sample.if_or_case("apple")
]

Enum.map(res, &(IO.puts(&1)))
# 110
# 90
# 110
# 90

Elixirには「ifやcase」といった従来の馴染みの深い制御文が用意されていますが
これらの制御文は可能な限り使わずにパターンマッチを使いこなすというのがお作法となっています

しかしながらパターンマッチで記述した場合とifやcaseのような制御文で記述した場合、どちらの方がパフォーマンスに優れているかということは気になりつつも、数値化されているソースはあまりありません

ないのならやっちゃおうというノリで今回はElixirでのパフォーマンス測定の方法から学び
実際にパターンマッチと制御文でどれだけパフォーマンスに違いがあるのかを確認していきます

Elixirでのパフォーマンス測定の方法については事前に私のブログにまとめましたので、ご参照下さい
Elixirでの実行速度の測定と色々と実験してみた【Enun.sum vs Enum.reduce etc...】

ざっくりアジェンダ

  • Elixirに用意されている制御構文について
  • Elixirでのパフォーマンス測定の方法について
  • パターンマッチ vs if, case...

タイムスケジュール

  • 19:30 ~19:40 => 会場準備(お互いの自己紹介など)
  • 19:40 ~ 20:00(変動あり) => 本日取り組む内容についてざっくりと説明
  • 20:30 ~ 21:20 => 手を動かして共に学ぶ
  • 21:20 ~ 21:30 => 撤収(終了時間が決まっているのでご協力ください)

開催場所

お気軽会議室名古屋丸の内ブルーというレンタルオフィスになります
(地下鉄桜通線3・4番出口より徒歩1分)
DK丸の内ビル4階の402号室になります
[居酒屋まるく] [桜通線エレベーター] [--> 会場ココ!! <--]

会場での注意事項

  • 飲食可ですが、ゴミは各自お持ち帰りください
  • 喫煙は禁止となっておりますのでご注意ください
  • 周囲に迷惑となる騒音は控えてください
  • 使用できる時間が決まっておりますので終了10分前には撤収の準備をお願い致します

お持ちいただくもの

  • ノートパソコン(必須) ※こちらからの貸し出しは御座いません
  • 飲み物(自由)
  • 書籍(自由) ※プログラミングelixirは僕が1冊、毎回持っていきます

環境構築について

OS問いませんが、elixirのプロンプト(iex)が起動するところまで完了しているものと想定しております
インストール方法につきましてはelixir-lang公式サイトよりご確認下さい
ブラウザ上でElixirを実行できる環境も御座いますのでこちらだけでもOKですPaiza

資料 資料をもっと見る/編集する

資料が投稿されると、最新の3件が表示されます。

フィード

sing_mascle69

sing_mascle69 さんが 【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)について を公開しました。

2019/08/02 23:55

【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)について を公開しました!

グループ

清流elixir

ゼロから学ぶをコンセプトに東海地方(岐阜/愛知)で活動していきたいelixirの勉強会コミュニティ

イベント数 18回

メンバー数 53人

終了

2019/08/09(金)

19:30
21:30

開催日時が重複しているイベントに申し込んでいる場合、このイベントには申し込むことができません

募集期間
2019/08/02(金) 21:00 〜
2019/08/09(金) 19:00

会場

お気軽会議室名古屋丸の内ブルー

愛知県名古屋市中区丸の内2丁目18-20

管理者

参加者(5人)

sing_mascle69

sing_mascle69

【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)について に参加を申し込みました!

murakami_motokazu_1213

murakami_motokazu_1213

【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)についてに参加を申し込みました!

(退会ユーザー)

(退会ユーザー)

【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)について に参加を申し込みました!

Papillon6814

Papillon6814

I joined 【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)について!

g_kenkun

g_kenkun

【第10回清流elixir勉強会】Elixirでのパフォーマンス測定(速度)についてに参加を申し込みました!

参加者一覧(5人)