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
研究の場においてのRust 製ソフトウェアのバージョン管理について
Search
puripuri2100
June 08, 2023
Programming
670
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
研究の場においてのRust 製ソフトウェアのバージョン管理について
puripuri2100
June 08, 2023
More Decks by puripuri2100
See All by puripuri2100
法律文書の自動解析2024
puripuri2100
0
87
絵文字は構文解析できるのか
puripuri2100
0
110
係り受け解析を用いた法律文書中の略称規定の解析についての報告
puripuri2100
0
3.3k
気胸の胸部CTデータの可視化
puripuri2100
0
330
SATySFiで作成する構文解析器
puripuri2100
0
290
SATySFiの開発についての要望
puripuri2100
0
460
法律文書の自動解析
puripuri2100
1
990
汎用的なコードフォーマットライブラリの作成
puripuri2100
0
350
ユーザーがカスタマイズできるクラスファイル ―v0.0.x と v0.1.x それぞれでの実装 ―
puripuri2100
0
410
Other Decks in Programming
See All in Programming
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
100
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
200
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
190
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
190
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.4k
Vite+ Unified Toolchain for the Web
naokihaba
0
740
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
150
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
480
えっ!!コードを読まずに開発を!?
hananouchi
0
190
継続モナドとリアクティブプログラミング
yukikurage
3
490
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
370
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
240
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
How to build a perfect <img>
jonoalderson
1
5.8k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
The Cost Of JavaScript in 2023
addyosmani
55
10k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
RailsConf 2023
tenderlove
30
1.5k
30 Presentation Tips
portentint
PRO
1
350
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
290
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
310
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
420
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Transcript
研究の場においての Rust 製ソフトウェアの バージョン管理について 筑波大学情報科学類 2 年 puripuri2100 アークエッジ・スペース Rust
勉強会 2023 年 6 月 7 日
1/6 自己紹介 インターネットネーム: puripuri2100
1/6 自己紹介 インターネットネーム: puripuri2100 筑波大学情報科学類 2 年
1/6 自己紹介 インターネットネーム: puripuri2100 筑波大学情報科学類 2 年 SATySFi/Rust/OCaml が好き
1/6 自己紹介 インターネットネーム: puripuri2100 筑波大学情報科学類 2 年 SATySFi/Rust/OCaml が好き ドキュメントの整備・処理
構文解析
1/6 自己紹介 インターネットネーム: puripuri2100 筑波大学情報科学類 2 年 SATySFi/Rust/OCaml が好き ドキュメントの整備・処理
構文解析 筑波大学情報科学類産学間連携推進室という研究室で研究している
1/6 自己紹介 インターネットネーム: puripuri2100 筑波大学情報科学類 2 年 SATySFi/Rust/OCaml が好き ドキュメントの整備・処理
構文解析 筑波大学情報科学類産学間連携推進室という研究室で研究している 「法律文書の自動解析」というテーマ
1/6 自己紹介 インターネットネーム: puripuri2100 筑波大学情報科学類 2 年 SATySFi/Rust/OCaml が好き ドキュメントの整備・処理
構文解析 筑波大学情報科学類産学間連携推進室という研究室で研究している 「法律文書の自動解析」というテーマ 成果を情報処理学会で発表したところ大会奨励賞と学生奨励賞を受賞
2/6 研究の話 法律文書を解析していろいろなデータを抽出する 読替規定分 参照表現 略称の定義
2/6 研究の話 法律文書を解析していろいろなデータを抽出する 読替規定分 参照表現 略称の定義 解析ソフトウェアを多数作っていく上で出てきた要求
2/6 研究の話 法律文書を解析していろいろなデータを抽出する 読替規定分 参照表現 略称の定義 解析ソフトウェアを多数作っていく上で出てきた要求 よく使う機能をライブラリ化(例:数百万の条文を探索)
2/6 研究の話 法律文書を解析していろいろなデータを抽出する 読替規定分 参照表現 略称の定義 解析ソフトウェアを多数作っていく上で出てきた要求 よく使う機能をライブラリ化(例:数百万の条文を探索) 他の解析ソフトウェアでの解析結果を利用したい
2/6 研究の話 法律文書を解析していろいろなデータを抽出する 読替規定分 参照表現 略称の定義 解析ソフトウェアを多数作っていく上で出てきた要求 よく使う機能をライブラリ化(例:数百万の条文を探索) 他の解析ソフトウェアでの解析結果を利用したい 論文化して再現実験できるようにするには解析ソフトウェアごとに独立して
管理する必要がある
2/6 研究の話 法律文書を解析していろいろなデータを抽出する 読替規定分 参照表現 略称の定義 解析ソフトウェアを多数作っていく上で出てきた要求 よく使う機能をライブラリ化(例:数百万の条文を探索) 他の解析ソフトウェアでの解析結果を利用したい 論文化して再現実験できるようにするには解析ソフトウェアごとに独立して
管理する必要がある なぜ Rust
2/6 研究の話 法律文書を解析していろいろなデータを抽出する 読替規定分 参照表現 略称の定義 解析ソフトウェアを多数作っていく上で出てきた要求 よく使う機能をライブラリ化(例:数百万の条文を探索) 他の解析ソフトウェアでの解析結果を利用したい 論文化して再現実験できるようにするには解析ソフトウェアごとに独立して
管理する必要がある なぜ Rust cargo・ tokio・ serde・ anyhow があるから
3/6 依存関係のグラフ 法令データ 法令解析用ライブラリ lib.rs 判例データ 解析ソフトウェアA main.rs 解析ソフトウェアB lib.rs
main.rs 解析ソフトウェアC main.rs 解析ソフトウェアD lib.rs main.rs 解析ソフトウェアE main.rs JSON JSON
4/6 ところで 頻繁に各ライブラリが更新される 解析手法のアップデート 新しい解析手法のための新しい関数追加 実験のサイクルを高速に回すにはリリース作業は邪魔 どうする? 法令データ 法令解析用ライブラリ lib.rs
判例データ 解析ソフトウェアA main.rs 解析ソフトウェアB lib.rs main.rs 解析ソフトウェアC main.rs 解析ソフトウェアD lib.rs main.rs 解析ソフトウェアE main.rs JSON JSON
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" }
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" } メリット
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" } メリット 実験を気軽に回せる
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" } メリット 実験を気軽に回せる 「適切な設計」で時間を浪費しないで済む
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" } メリット 実験を気軽に回せる 「適切な設計」で時間を浪費しないで済む うまくいったらたまにリリースすれば良い
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" } メリット 実験を気軽に回せる 「適切な設計」で時間を浪費しないで済む うまくいったらたまにリリースすれば良い デメリット
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" } メリット 実験を気軽に回せる 「適切な設計」で時間を浪費しないで済む うまくいったらたまにリリースすれば良い デメリット たまに破壊される 同じ構造体を使っているつもりでも互換性が無いことがある
5/6 現在の依存関係の管理 リポジトリと commit タグを指定 jplaw_text = { git="https://github.com/japanese-law-analysis/ jplaw_text.git",
rev="f98b48e" } メリット 実験を気軽に回せる 「適切な設計」で時間を浪費しないで済む うまくいったらたまにリリースすれば良い デメリット たまに破壊される 同じ構造体を使っているつもりでも互換性が無いことがある パッケージマネージャの恩恵が半減(submodule 時代へ逆戻り)
6/6 まとめ 研究で作るソフトウェア群の管理が難しい 実験のしやすさ 他の人にとっての再現のしやすさ 互換性の維持
6/6 まとめ 研究で作るソフトウェア群の管理が難しい 実験のしやすさ 他の人にとっての再現のしやすさ 互換性の維持 モノは https://github.com/japanese-law-analysis に全てあります
6/6 まとめ 研究で作るソフトウェア群の管理が難しい 実験のしやすさ 他の人にとっての再現のしやすさ 互換性の維持 モノは https://github.com/japanese-law-analysis に全てあります 俺ってどうしたらいいですか状態