Rust part9

■ このスレッドは過去ログ倉庫に格納されています
2020/08/23(日) 01:07:35.52ID:MgEpWwVh
Mozilla発のRust言語のスレ

公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

Web上の実行環境
https://play.rust-lang.org

前スレ
Rust part8
https://mevius.5ch.net/test/read.cgi/tech/1579834072/
2020/08/23(日) 10:31:18.31ID:WHl934bN
Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/
2020/08/23(日) 12:12:13.82ID:vopEnHQM
いちおつ
2020/08/23(日) 13:15:25.53ID:jbA8Vxfm
最近は初学者向けの文書も充実してきてるね

Tour of Rust
https://tourofrust.com

Rust explained using easy English
https://github.com/Dhghomon/easy_rust
2020/08/23(日) 15:24:56.55ID:dfu3xBf1
http://zsiciarz.github.io/24daysofrust/index.html
今これ読んでる
2020/08/24(月) 02:54:03.17ID:ko9AntT7
日本語でおけ
7デフォルトの名無しさん
垢版 |
2020/08/24(月) 03:09:08.38ID:gAClNVkQ
web_sys使って意図的にHTML食わせてDOM操作とかしたいんだけどこれって出来ない?
https://docs.rs/web-sys/0.3.44/web_sys/
2020/08/25(火) 22:04:20.93ID:cBDpP6RF
>>7
rustからDOM叩くのはバインディングさえ用意すれば出来るけど"意図的にHTML食わせて"の意味がわからん。
9デフォルトの名無しさん
垢版 |
2020/08/26(水) 09:25:11.81ID:zXQp5MBn
>>8
HTMLのテキストをDocument::from(&html_text)みたいに読ませて、そこからDOM操作してDOMのvalueとかattrとか読みたい。
他のHTMLパーサーは規格がバラバラだからweb_sys使いたい
2020/08/26(水) 09:37:17.33ID:4U25QJJo
>>9
DOM操作なんかしないで、これ使おうぜ
https://github.com/tanakh/easy-scraper
2020/08/26(水) 10:49:33.15ID:goOahd89
>>10
それkuchikiをそのまま使うのに比べてどういうメリットがあるの?
css selectorで指定できたほうが簡単で柔軟だと思うんだけど

>>9
HTMLパーサーの有名どころは、scraper, select, kuchikiの3つだけど
どれも内部的にservoのhtml5everを使ってるから一緒じゃない?
12デフォルトの名無しさん
垢版 |
2020/08/26(水) 14:28:06.12ID:zXQp5MBn
easy-scraperは個人的に仕様がダサいと思う

>>11
web_sysのドキュメント見たら分かるけど、APIがかなり豊富でMDN遵守してるし、wasmにも移管できる。
その三つは楽だけどそれ以外はweb_sysの方が良いから
2020/08/26(水) 15:34:22.88ID:goOahd89
>>12
wasmにも移管できるって、web-sysはwasm前提だと思うんだけどwasm以外で使えるの?
2020/08/26(水) 17:13:59.22ID:Yn/rXsvn
>>12
ダサいといえばダサいんだが、綺麗さより楽さを取ったデザインって感じの話が作者のブログに書いてあったよ。
2020/08/26(水) 21:28:36.70ID:mE3MiLfN
>>9
whatwg DOMにDOM Level3 Load & Saveがないから今のDOMで外部ファイルのパースはできない。
適当なAPIでファイル読んでwasmにコンパイルした他のDOM Level3実装に食わせればいい。
rustで書かれたDOM Level3実装が見当たらないから他言語になるかな。

whatwgのDOMはesからhtml操作する以外は考えてないから、そういう事したいなら他でやるしかないね。
16デフォルトの名無しさん
垢版 |
2020/08/26(水) 22:06:03.86ID:JjGrRnat
綺麗に作れないから自分が楽な設計をしたというだけ
アラフォープログラマにありがちな言い訳
2020/08/27(木) 02:24:33.81ID:yLQzP5wb
無能の僻みかな
2020/08/27(木) 03:10:08.73ID:MrnqDky1
>>16
「楽な」は「楽に使える」という意味だぞ。
綺麗な設計を捨てる方が作るのは大変に決まっとろうが……。
19デフォルトの名無しさん
垢版 |
2020/08/27(木) 04:23:21.10ID:FQ07KrIG
>>13
ごめん、そこらへん認識甘いかも
wasmのランタイムじゃなくて、普通にrustcでも動くんじゃない?

>>15
そうなんだ、貴重な情報ありがとう。
20デフォルトの名無しさん
垢版 |
2020/08/27(木) 08:43:15.31ID:bHW4ZDaj
>>18
そう主張してるが本人が楽なだけ
2020/08/28(金) 01:00:10.14ID:LEZPXhgF
easy-scraperのブログみて試しにkuchikiでやってみたけどドキュメントがなさすぎてkichikuだった

次はscraperにする
2020/08/28(金) 10:56:42.59ID:kaNWPz+d
今月の新機能 Option::zip の使いどころが分からない
こんなの要らないだろ
https://doc.rust-lang.org/stable/std/option/enum.Option.html#method.zip
23デフォルトの名無しさん
垢版 |
2020/08/28(金) 15:11:57.10ID:AUb/6LnR
使うならOption版の論理演算とかかな
2020/08/28(金) 23:01:39.34ID:LEZPXhgF
the bookの分かりやすい更新履歴みたいのってある?

1度読み終わって以降に新しく追加された章や節がないかを確認したいんだけど
githubのcommitログ眺めていく以外の現実的な方法が見つからなくて困ってる
2020/08/29(土) 00:41:53.30ID:JtEdK3mn
>>22
cons cellにしてからflatするの面倒くさい。
俺はvec::Drainをas_sliceする用途がよくわからん。ただの変換用だろうか。

こっちの互換性残ってよかった。
ttps://github.com/rust-lang/rust/pull/74150/
2020/08/29(土) 17:57:40.88ID:6ekcNRq6
anyhowとthiserror 初めて知ったわ
std::Errorが便利になるまではこれ使っとけばよさそうだね
2020/08/29(土) 22:59:59.85ID:CxDsroMX
とっくにfailureのフィードバック終わってるけど、ver古くない?
2020/08/29(土) 23:02:55.48ID:MYuD75tc
結局今は何使うべきなの?
std::Error? failure? anyhow?
2020/08/30(日) 03:03:14.91ID:A+BfCyCQ
@rustlangって日本語のRTもするのか
機械翻訳で読んだのかな
30デフォルトの名無しさん
垢版 |
2020/08/30(日) 11:07:07.53ID:YXE1VqL6
いつになったらベンチマークStableにすんだよな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況