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
210
夏休みの(最後の)宿題 for JuliaTokyo #12
夏休みの(最後の)宿題
JuliaTokyo #12 LT資料
GOTOH Shunsuke
August 31, 2024
Tweet
Share
More Decks by GOTOH Shunsuke
See All by GOTOH Shunsuke
FP in Julia « SIDE: J » for JuliaTokai #21
antimon2
0
78
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
220
あなたの知らない(概ね知らなくても良い)Juliaの世界 for JuliaLangJa 年末 LT 大会 2024
antimon2
0
88
Julia 新 LTS v1.10 解説 for JuliaTokai #20
antimon2
1
230
Julia クイズ ~API編~ for JuliaTokai #19
antimon2
1
190
Julia でどうしても super().hoge みたいなことしたい人へ for JuliaTokai #18
antimon2
1
380
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11
antimon2
2
670
勉強会を主催したら 本を出して技術顧問になった話 for NGK2024S
antimon2
0
340
Julia本を書いたら技術顧問になった話 for JuliaTokai #17
antimon2
0
600
Other Decks in Technology
See All in Technology
AWS CDK コントリビュート はじめの一歩
yendoooo
1
120
Cloud Native PG 使ってみて気づいたことと最新機能の紹介 - 第52回PostgreSQLアンカンファレンス
seinoyu
2
230
SaaSプロダクト開発におけるバグの早期検出のためのAcceptance testの取り組み
kworkdev
PRO
0
460
ひまプロプレゼンツ 「エンジニア格付けチェック 〜春の公開収録スペシャル〜」
kaaaichi
0
150
LINE Notify互換のボットを作った話
kenichirokimura
0
180
Explainable Software Engineering in the Public Sector
avandeursen
0
370
大規模サービスにおける カスケード障害
takumiogawa
3
300
Riverpod & Riverpod Generatorを利用して状態管理部分の処理を書き換えてみる簡単な事例紹介
fumiyasac0921
0
110
お問い合わせ対応の改善取り組みとその進め方
masartz
1
370
Proxmox VE超入門 〜 無料で作れるご自宅仮想化プラットフォームブックマークする
devops_vtj
0
160
Enterprise AI in 2025?
pamelafox
0
100
コード品質向上で得られる効果と実践的取り組み
ham0215
2
200
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.6k
What's in a price? How to price your products and services
michaelherold
245
12k
Building Adaptive Systems
keathley
41
2.5k
Why Our Code Smells
bkeepers
PRO
336
57k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
7
620
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Designing for humans not robots
tammielis
251
25k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
How STYLIGHT went responsive
nonsquared
99
5.4k
RailsConf 2023
tenderlove
29
1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
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 • 皆さまの挑戦、お待ちしております!
ご清聴ありがとうございます。