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
200
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
1.1k
FP in Julia « SIDE: J » for JuliaTokai #21
antimon2
1
170
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
280
あなたの知らない(概ね知らなくても良い)Juliaの世界 for JuliaLangJa 年末 LT 大会 2024
antimon2
0
130
Julia 新 LTS v1.10 解説 for JuliaTokai #20
antimon2
1
320
Julia クイズ ~API編~ for JuliaTokai #19
antimon2
1
210
Julia でどうしても super().hoge みたいなことしたい人へ for JuliaTokai #18
antimon2
1
400
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11
antimon2
2
750
Other Decks in Technology
See All in Technology
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
nextbeatdev
0
290
人と組織に偏重したEMへのアンチテーゼ──なぜ、EMに設計力が必要なのか/An antithesis to the overemphasis of people and organizations in EM
dskst
6
690
異業種出身エンジニアが気づいた、転向して十数年経っても変わらない自分の武器とは
macnekoayu
0
210
役割は変わっても、変わらないもの 〜スクラムマスターからEMへの転身で学んだ信頼構築の本質〜 / How to build trust
shinop
0
110
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
660
Microsoft Fabric のネットワーク保護のアップデートについて
ryomaru0825
1
110
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
モダンな現場と従来型の組織——そこに生じる "不整合" を解消してこそチームがパフォーマンスを発揮できる / Team-oriented Organization Design 20250825
mtx2s
6
39k
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
28
10k
LLMエージェント時代に適応した開発フロー
hiragram
1
450
アジャイルテストで高品質のスプリントレビューを
takesection
0
140
TypeScript入門
recruitengineers
PRO
29
9.5k
Featured
See All Featured
Embracing the Ebb and Flow
colly
87
4.8k
Become a Pro
speakerdeck
PRO
29
5.5k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Statistics for Hackers
jakevdp
799
220k
Practical Orchestrator
shlominoach
190
11k
Agile that works and the tools we love
rasmusluckow
330
21k
Why Our Code Smells
bkeepers
PRO
339
57k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Unsuck your backbone
ammeep
671
58k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
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 • 皆さまの挑戦、お待ちしております!
ご清聴ありがとうございます。