Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
html5everをスクリプト言語から呼ぶ
Search
take_cheeze
January 22, 2019
Programming
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
html5everをスクリプト言語から呼ぶ
take_cheeze
January 22, 2019
More Decks by take_cheeze
See All by take_cheeze
goluaをさわってみる
takecheeze
0
410
mgemのCIを支える諸々
takecheeze
2
580
Go_2のドラフトを読む__エラー編_.pdf
takecheeze
0
1.8k
fukuoka.rb 祝 #100!
takecheeze
0
700
dep ensure浅掘り
takecheeze
0
470
LuaJIT as a Ruby backend
takecheeze
1
3.8k
Fukuoka Ruby Award 10th
takecheeze
1
290
コンパイル時計算への招待.pdf
takecheeze
1
1.5k
mrubyにとるRubyのシングルバイナリ運用
takecheeze
0
1.4k
Other Decks in Programming
See All in Programming
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
4
1.1k
週末にAI-DLCを本気で回したら$1,600溶けた
hbashimizu
0
130
AIエージェント時代のコードレビューを設計する
nogu66
6
2.6k
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
1.9k
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
160
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
140
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
530
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
160
「AI時代、配布するPythonコードをどう守るか: 難読化の実験と判断軸」 #PyconJP2026
pkshadeck
PRO
2
200
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
110
[DroidKaigi 2026] Bring your own phones to Gradle Managed Devices
f2lk
0
110
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
22k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
300
Embracing the Ebb and Flow
colly
88
5.2k
Speed Design
sergeychernyshev
33
2.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
470
Deep Space Network (abreviated)
tonyrice
0
300
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.2k
Fireside Chat
paigeccino
43
4k
Transcript
html5everを スクリプト言語から呼ぶ @take[-_]cheeze
自己紹介 - 仕事ではRailsとGolang書いとります - RustはC++の代替として覚えようと - 最近は、Address SanitizerのせいでC++でもいいんじゃね? と思いつつある。。。おのれGoogle! -
とはいえ、Better-CがほしいならRustがいいかな
作ったもの - mrustyというmrubyからRustを呼べるようにするライブラリの改 造 - ↑を使ったhtml5everバインディング - nokogiriを置き換えたかった気がする(覚えてない
使ってるもの解説 - html5ever - HTML5パーサー - Firefox Quantumから使われているHTMLレンダリングエ ンジンServoの内部で使われている -
mrusty - anima-engineというゲームエンジンの一部 - Rustで実装されたゲームエンジンのため? - 正直、マクロでの記法はhelixに劣る
仕組み - mruby本体に手を入れずにビルドスクリプトでがんばる - mrbgem.rakeというmrubyのgemの設定ファイルが長い - 150行越え - なんていうか大変だった... -
もうmrubyに手を入れたい - Cargo.tomlをmrbgem.rakeの設定から生成 - ライブラリの生成
Cargoと戯れる - Cargoの内部について - Cargoのソースを読んでみようがおすすめ - ビルドツールが提供されるのは嬉しい - でも、挙動の把握が大変 -
必要な依存ライブラリのビルドに使う - Cargoの特殊な使い方をいっぱい知った - 複数のRustを使ったmrbgemだとまだ未対応
html5everの機能 - とりあえずHTML5のテキストのパース - セレクターなどの機能は手付かず - 小要素を辿ってくとか、要素のタイプを取得できる - 詳しくはテスト見て
セレクターをどうするのか? - kuchikiがあるのでそれを使う? - ぐぐると「済まぬ」さんしか出てこないの要工夫 - XPath使えない... - nokogiriがXPath使えたので、現在ここで頓挫
XML対応 - xml5everというhtml5ever下のプロジェクト - html5ever下になったら、開発が進むかなと...? - それほど活発に開発されていない - SXD -
SXD-XPath: XPath対応 - SXD-Document: XMLドキュメントに対応
おしまい - ありがとうございました - helixの話もしたかった