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
take_cheeze
January 22, 2019
Programming
0
200
html5everをスクリプト言語から呼ぶ
take_cheeze
January 22, 2019
Tweet
Share
More Decks by take_cheeze
See All by take_cheeze
goluaをさわってみる
takecheeze
0
280
mgemのCIを支える諸々
takecheeze
2
520
Go_2のドラフトを読む__エラー編_.pdf
takecheeze
0
1.4k
fukuoka.rb 祝 #100!
takecheeze
0
560
dep ensure浅掘り
takecheeze
0
370
LuaJIT as a Ruby backend
takecheeze
1
3.2k
Fukuoka Ruby Award 10th
takecheeze
1
220
コンパイル時計算への招待.pdf
takecheeze
1
1.2k
mrubyにとるRubyのシングルバイナリ運用
takecheeze
0
1.1k
Other Decks in Programming
See All in Programming
C#および.NETに対する誤解をひも解く
ymd65536
0
230
Pydantic x Database API:turu-pyの開発
yassun7010
1
460
グローバルなソフトウェアテスト組織における課題と戦略 / Challenges and Strategies in a Global Software Testing Organization #mf_techday
imtnd
0
230
ECS向けのドリフト検知機構を実装してみた
tkikuc
0
270
フロントエンドの標準仕様をどう追っているか / How I follow the frontend standards specs
petamoriken
2
170
Quarto Clean Theme
nicetak
0
220
GitHub Copilot Workspace で我々のアプリ開発がどう変わるのか?
shuyakinjo
0
850
全方位強化 Python 服務可觀測性:以 FastAPI 和 Grafana Stack 為例
blueswen
1
360
CSC305 Lecture 01
javiergs
PRO
1
140
2024-10-02 dev2next - Application Observability like you've never heard before
jonatan_ivanov
0
150
ACES Meet におけるリリース作業改善の取り組み
fukucheee
0
120
"Swarming" をコンセプトに掲げるアジャイルチームのベストプラクティス
boykush
2
170
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
360
19k
Adopting Sorbet at Scale
ufuk
73
8.9k
YesSQL, Process and Tooling at Scale
rocio
167
14k
Docker and Python
trallard
40
3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
59k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
25
640
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
230
17k
For a Future-Friendly Web
brad_frost
174
9.3k
From Idea to $5000 a Month in 5 Months
shpigford
380
46k
Done Done
chrislema
181
16k
Designing on Purpose - Digital PM Summit 2013
jponch
114
6.9k
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の話もしたかった