Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
夏休みの(最後の)宿題 for JuliaTokyo #12
Search
GOTOH Shunsuke
August 31, 2024
Technology
1
260
夏休みの(最後の)宿題 for JuliaTokyo #12
夏休みの(最後の)宿題
JuliaTokyo #12 LT資料
GOTOH Shunsuke
August 31, 2024
Tweet
Share
More Decks by GOTOH Shunsuke
See All by GOTOH Shunsuke
関数型まつりレポート for JuliaTokai #22
antimon2
0
210
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
1.2k
FP in Julia « SIDE: J » for JuliaTokai #21
antimon2
1
180
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
300
あなたの知らない(概ね知らなくても良い)Juliaの世界 for JuliaLangJa 年末 LT 大会 2024
antimon2
0
140
Julia 新 LTS v1.10 解説 for JuliaTokai #20
antimon2
1
330
Julia クイズ ~API編~ for JuliaTokai #19
antimon2
1
210
Julia でどうしても super().hoge みたいなことしたい人へ for JuliaTokai #18
antimon2
1
410
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11
antimon2
2
770
Other Decks in Technology
See All in Technology
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
3
2.5k
ニッポンの人に知ってもらいたいGISスポット
sakaik
0
150
ユーザーの声とAI検証で進める、プロダクトディスカバリー
sansantech
PRO
1
140
リセラー企業のテクサポ担当が考える、生成 AI 時代のトラブルシュート 2025
kazzpapa3
1
350
物体検出モデルでシイタケの収穫時期を自動判定してみた。 #devio2025
lamaglama39
0
160
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
4
450
Claude Codeを駆使した初めてのiOSアプリ開発 ~ゼロから3週間でグローバルハッカソンで入賞するまで~
oikon48
10
4.3k
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
300
AIツールでどこまでデザインを忠実に実装できるのか
oikon48
6
3.4k
能登半島災害現場エンジニアクロストーク 【JAWS FESTA 2025 in 金沢】
ditccsugii
0
860
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
Claude Code Subagents 再入門 ~cc-sddの実装で学んだこと~
gotalab555
10
14k
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Git: the NoSQL Database
bkeepers
PRO
431
66k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Writing Fast Ruby
sferik
629
62k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
870
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Transcript
夏休みの(最後の)宿題 2024/08/31 JuliaTokyo #12 antimon2(後藤 俊介)
お品書き • お前誰よ? • 簡単な Julia の紹介 • JuliaTokai の紹介
• 近況報告 • 宿題!
お前誰よ?
自己紹介 • 名前:後藤 俊介 • 所属:有限会社 来栖川電算 • コミュニティ:🌟JuliaTokai, 🌟機械学習名古屋,
⭐JuliaLangJa, Ruby東海, Python東海, … • 言語:Julia, Python, Ruby, … • SNS等: (@antimon2) • SNS等(2): (@antimon2.jl) • 著書:実践Julia入門
https://www.kurusugawa.jp
プレスリリース → https://www.hatch-tech-nagoya.jp/pr-escalator-ai https://www.kurusugawa.jp/htn-2023-11-17
JuliaTokai の紹介
https://juliatokai.connpass.com/
コミュニティの紹介 • Julia の東海地方ユーザグループ(2019~) • 2020/05 から完全オンライン開催 • 2024/03 JuliaLangJa
サブセクションに • 現在に至る
勉強会の内容 • オンライン開催 ◦ 地方・所属関係なくどなたでも参加OK! ◦ (会場:JuliaLangJa Discord サーバ内ボイスチャンネル) •
Julia について語り合える場 (定期開催) ◦ 発表 + もくもく会 (相談OK!) ◦ JuliaLangJa の 行動規範 を逸脱しなければ基本なんでも OK!
次回勉強会 • 9/下旬~10/上旬 に予定(約1ヶ月後) ◦ Discord の #general チャンネルをチェック!
近況報告
• JuliaTokyo #11 で Julia コンサ ル のお仕事 報告 前回のあらすじ
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11 👆
2024/06 ~ 2024/09 • Julia コンサル (続き) ◦ Julia コードレビュー
(引き続き) ◦ コードコンサルティング(アドバイス) (引き続き) ◦ 一部機能実装 ◦ 不具合調査・解決 • ※2024/10~ 続行予定
https://github.com/hros/XXhash.jl/pull/9
宿題提出w • ライブラリの不具合発見(お盆前) • 原因調査(お盆休み中) • 修正・PR(お盆明け)
皆さんは 夏休みの宿題、終わりましたか?
宿題を出します!!w
出題:infiniteproduct() 関数 • 直積集合を列挙するイテレータ を作ってください! ◦ 引数に複数のイテレータを受け取 る ◦ 無限列を渡してもすべての組合せ
を列挙できる(理論上) iterator = infiniteproduct( Iterators.countfrom(1), Iterators.countfrom(1) ) for vals in iterator println(vals) end ## (1, 1) ## (1, 2) ## (2, 1) ## (1, 3) ## (2, 2) ## (3, 1) ## :《以下略》
参考:Iterators.product() 関数 • これも 直積集合を列挙するイテレータ を返す関数 • 無限列を引数に与えると、 後者のイテ レータがいつまで経っても処理されな
い… iterator = Iterators.product( Iterators.countfrom(1), Iterators.countfrom(1) ) for vals in iterator println(vals) end ## (1, 1) ## (2, 1) ## (3, 1) ## (4, 1) ## (5, 1) ## (6, 1) ## :《以下略、、 (1, 2) は永遠に出てこな
infiniteproduct() 関数(仕様) • 最初の要素からの距離(L1)が近いものから列挙する! ◦ イメージ: 👉 ◦ もちろん3D以上でも 同様 (1,
1) (2, 1) (3, 1) (4, 1) (5, 1) ⋯ (1, 2) (2, 2) (3, 2) (4, 2) ⋯ ⋯ (1, 3) (2, 3) (3, 3) ⋯ ⋯ ⋯ (1, 4) (2, 4) ⋮ ⋱ (1, 5) ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋱
解答方法 (1) • InfiniteProductQuiz.jl というリポジトリを用意 • これを clone/実装 してください! ◦
Base.iterate(::InfiniteProduct[, state]) を 実装すればOK ◦ 実装方法(概要)は、例えば以下を参考に: ▪ 拙著 実践Julia入門 第6章「イテレーション」 ▪ 公式ドキュメント: Iteration
解答方法 (2) • テストコードの例 👉 • const SKIP = true を
const SKIP = false に 変更して、テストが通るよう にする
解答方法 (3) • テストが全部 Pass すればOK!
ヒント? • 10年前に CodeIQ 出題経験 • その時の問題を Julia に翻訳したもの •
ヒント・解説記事を 書いているので それを探せば 👉
補足・その他 • 解答例・解説は次回 JuliaTokai #20 でする予定 ◦ 手元では一応動くものはできてる • (それまでに)実装出来たらぜひプルリクください!
◦ Discord 内でURL教えてくれるだけでもOK • 皆さまの挑戦、お待ちしております!
ご清聴ありがとうございます。