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
html5everをスクリプト言語から呼ぶ
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
take_cheeze
January 22, 2019
Programming
0
250
html5everをスクリプト言語から呼ぶ
take_cheeze
January 22, 2019
Tweet
Share
More Decks by take_cheeze
See All by take_cheeze
goluaをさわってみる
takecheeze
0
370
mgemのCIを支える諸々
takecheeze
2
560
Go_2のドラフトを読む__エラー編_.pdf
takecheeze
0
1.6k
fukuoka.rb 祝 #100!
takecheeze
0
660
dep ensure浅掘り
takecheeze
0
450
LuaJIT as a Ruby backend
takecheeze
1
3.7k
Fukuoka Ruby Award 10th
takecheeze
1
270
コンパイル時計算への招待.pdf
takecheeze
1
1.4k
mrubyにとるRubyのシングルバイナリ運用
takecheeze
0
1.3k
Other Decks in Programming
See All in Programming
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
300
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
190
CSC307 Lecture 07
javiergs
PRO
1
560
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
250
CSC307 Lecture 12
javiergs
PRO
0
430
AI時代の認知負荷との向き合い方
optfit
0
180
CSC307 Lecture 11
javiergs
PRO
0
580
Python’s True Superpower
hynek
0
170
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
440
浮動小数の比較について
kishikawakatsumi
0
230
個人開発は儲からない - それでも開発開始1ヶ月で300万円売り上げた方法
taishiyade
0
110
24時間止められないシステムを守る-医療ITにおけるランサムウェア対策の実際
koukimiura
1
160
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
210
Speed Design
sergeychernyshev
33
1.5k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Color Theory Basics | Prateek | Gurzu
gurzu
0
210
Paper Plane
katiecoart
PRO
0
47k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
210
The Spectacular Lies of Maps
axbom
PRO
1
540
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
110
First, design no harm
axbom
PRO
2
1.1k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
93
Leo the Paperboy
mayatellez
4
1.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の話もしたかった