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
0
150
夏休みの(最後の)宿題 for JuliaTokyo #12
夏休みの(最後の)宿題
JuliaTokyo #12 LT資料
GOTOH Shunsuke
August 31, 2024
Tweet
Share
More Decks by GOTOH Shunsuke
See All by GOTOH Shunsuke
Julia クイズ ~API編~ for JuliaTokai #19
antimon2
1
110
Julia でどうしても super().hoge みたいなことしたい人へ for JuliaTokai #18
antimon2
1
300
『実践Julia入門』 で 割愛したネタ for JuliaTokyo #11
antimon2
2
520
勉強会を主催したら 本を出して技術顧問になった話 for NGK2024S
antimon2
0
250
Julia本を書いたら技術顧問になった話 for JuliaTokai #17
antimon2
0
500
Juliaってどんなことができるの? for JuliaTokai #16
antimon2
1
580
型と多重ディスパッチ for 数学と物理におけるJuliaの活用 2023-07-10
antimon2
0
650
スレッド並列の基礎 for 数学と物理におけるJuliaの活用 2023-07-10
antimon2
0
1.4k
Pythonのじゃないけれど 本を書いた話
antimon2
0
350
Other Decks in Technology
See All in Technology
強いチームを夢見て-PMからSREに転身して1年の振り返り / 20240906_bengo4_sre
bengo4com
2
830
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
0
13k
The XZ Backdoor Story
fr0gger
0
3.3k
contenteditableと向き合う
kikuchikakeru
2
290
OR学会2024秋_短期収益と将来のオフ方策評価性能を考慮したクーポン割当方策混合比の決定
recruitengineers
PRO
4
420
DroidKaigi 2024 たすけて!ViewModel
mhidaka
5
560
四国クラウドお遍路 2024 in 高知 オープニング
yukataoka
0
190
社内の学びの場・コミュニティ形成とエンジニア同士のリレーションシップ構築/devreljapan2024
nishiuma
3
210
四国クラウドお遍路 2024 in 高知 エンディング
yukataoka
0
190
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
15
40k
Developer Experienceを向上させる基盤づくりの取り組み事例集
coconala_engineer
0
110
SORACOMで実現するIoTのマルチクラウド対応 - IoTでのクリーンアーキテクチャの実現 -
kenichirokimura
0
350
Featured
See All Featured
Debugging Ruby Performance
tmm1
72
12k
How to train your dragon (web standard)
notwaldorf
85
5.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
24
600
The Mythical Team-Month
searls
218
43k
Why Our Code Smells
bkeepers
PRO
334
56k
Code Review Best Practice
trishagee
62
16k
WebSockets: Embracing the real-time Web
robhawkes
59
7.3k
Git: the NoSQL Database
bkeepers
PRO
425
64k
What's in a price? How to price your products and services
michaelherold
242
11k
YesSQL, Process and Tooling at Scale
rocio
167
14k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
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 • 皆さまの挑戦、お待ちしております!
ご清聴ありがとうございます。