[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 11/05 10:37 / Filesize : 296 KB / Number-of Response : 1021
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Rust part15



1 名前:デフォルトの名無しさん mailto:sage [2022/05/12(木) 18:28:20.99 ID:cuIcFT6k.net]
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

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

日本語の情報
https://rust-jp.rs/

※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/

※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust

※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/

※C++との比較は専用スレへ
C++ vs Rust
https://mevius.5ch.net/test/read.cgi/tech/1619219089/

※次スレは原則>>980が立てること

前スレ
Rust part14
https://mevius.5ch.net/test/read.cgi/tech/1644596656/

620 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 15:51:26.10 ID:Lxou0O6d.net]
DiscordとかDropboxとか

621 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 16:19:59.18 ID:C3/u0lQ5.net]
WinとかLinuxの中身ですでに使われてなかった?

622 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 18:52:01.33 ID:BGPUwt90.net]
>>593
同じ臭いも何も同一人物だろ

623 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 19:26:39.50 ID:WsHL0uxM.net]
>>611
Linuxはまだ
winは確実なソースあったっけ?
OS系だとAndroidでは使われてる(まだデフォルトで有効ではないけど)

624 名前:デフォルトの名無しさん mailto:sage [2022/06/11(土) 23:25:25.63 ID:HlAQKNMT.net]
なんでRound18なんて大昔の過去を?

625 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 06:12:09.52 ID:6S+GFICB.net]
>>612
どうでもいい

>>613
同じくどうでもいい

626 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 17:11:51.09 ID:tUHADwRi.net]
Rustはver2.0にはなりませんって言ってるけど実質はとっくの昔にver2.0になってる

627 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 19:14:45.66 ID:geXDvND7.net]
>>616
どういうこと?

628 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 20:36:02.36 ID:nrxswUhC.net]
>>562 >>566
CheckedAddAssignにこだわる必要はないため、発想を転換して、
checked_add()の原関数であるoverflowing_add()を用いることで、
overflowing_add_assign()を用意して同じようにbool値を返せば解決する

具体的には以下のように引数はadd_assign()と同じでbool値を返せばよい
trait OverflowingAddAssign {
 fn overflowing_add_assign(&mut self, rhs: &Self) -> bool;
}

オーバーフローするi8型〜u128型にはoverflowing_add()があるため実装はこうなる
 let is_overflow;
 (*self, is_overflow) = self.overflowing_add(*rhs);
 is_overflow
この3行のコードでちゃんと最適化されるかどうかを確認するため、
単純にadd_assignを用いた場合、すなわち「*self += rhs」と比較すると
https://godbolt.org/z/WP3En8xM8
のアセンブリ出力となり、オーバーフローを返す以外は同一に最適化されることが確認できる

一方でオーバーフローしないBigUintなどの型への実装はこうなる
 *self += rhs;
 false
つまりオーバーフローの結果として常にfalseを返すので、
こちらは使う側でオーバーフローの扱いが消えてadd_assign部分のみに最適化される

したがってこのOverflowingAddAssignを用いてジェネリックに書けば、
どちらの型の場合であっても、非ジェネリックに書いた時と同一コードとなる



629 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 20:47:24.48 ID:nrxswUhC.net]
>>577
一般的に参照返すイテレータ類を実装する場合の注意点として、
 1. let x0 = x_iter.next();
 2. let x1 = x_iter.next();
 3. ここで x0 の指す値を使う
順にこのような使い方をした時の挙動として、以下4パターンが考えられる
 A. ✕ 実行時エラーとなる
 B. ✕ x0の指す値が変化してしまう (次のx1の指す値と同一になってしまう)
 C. ○ x0もx1もそれぞれ正しい値を指す
 D. ○ コンパイル時エラーとなる

Rcとget_mut()を使った>>511のコードがNGのパターンA.で、これを避けるために、
Rc<RefCell>を使う提案のようだが、それもNGのパターンB.となってしまう
Rcとmake_mut()を使えばパターンC.となり、これがRc利用の場合の解となる

しかし参照を返すイテレータ自身がmake_mut()でclone()するのは役割として過剰である
切り分けとしてはイテレータを使う側が必要に応じてclone()するのが望ましい
そういうコードへ適切に誘導できる道が、コンパイル時エラーで示すパターンD.

具体的には、似非IteratorであるStreamingIteratorを用いるか、
Rust本命のGATsを用いたLendingIterator (=GATs適用後のIterator) を用いると、
clone()が必要な場面ではコンパイル時エラーにより知らせてくれる
もちろん普通にnext()ループ内の利用ならばclone()の必要なくコンパイルが通る

630 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 20:59:35.22 ID:nrxswUhC.net]
実際に >>618のOverflowingAddAssignを用いてLendingIteratorで実装すると
以下のようになり、GATsを用いている以外は現状のIteratorともちろん同じ形
自己参照を返せるようになった点のみ異なる

impl<T: OverflowingAddAssign> LendingIterator for Fibonacci<T> {
 type Item<'a> = &'a T where Self: 'a;

 fn next<'a>(&'a mut self) -> Option<Self::Item<'a>> {
  if self.is_overflow {
   return None;
  }
  if self.is_first {
   self.is_first = false;
  } else {
   self.is_overflow = self.p.overflowing_add_assign(&self.q);
   std::mem::swap(&mut self.p, &mut self.q);
  }
  Some(&self.p)
 }
}

is_first処理は >>511のコードでの「iter::once(p.clone()).chain(...」部分であり必須
また、前述のようにBigUintで用いれば is_overflow が常にfalseのため最適化で消えて、
値の更新部分は「self.p += &self.q」のみが残り非ジェネリックと同一コードとなる
したがって、上述のコードがどの型でも最善に動作するコードとなるだろう

631 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 21:33:27.12 ID:HOCAPH7I.net]
NAVERまとめを彷彿とさせるレス乙
3~4日もかけて頑張って調べたのは讃えるが
特質の異なるものを必要もなくジェネリック化することがアンチパターンだということに早く気づいてね

632 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 21:51:32.06 ID:rC/Ton17.net]
これは同じものだからジェネリックでいいんじゃね

633 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 22:02:56.78 ID:geXDvND7.net]
>>620
構造体メンバーであるis_overflowが常にfalseであることが分かるほどコンパイラ賢いんだっけ?
実際に生成されるコード確認した?

634 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 22:16:28.43 ID:McWr7xMA.net]
add系は#[inline]だから大丈夫

635 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 22:22:02.34 ID:geXDvND7.net]
>>624
構造体メンバの値はグローバル変数なんかと同じで関数外で値が変更される可能性があるので
メンバが特定の値しか取らないことを暫定として最適化するためには、
crateの範囲を超えてプログラム全体で値が設定されうる箇所が他にないことを確認するか
メンバが可視な範囲で確認する必要があると思うけど、
前者をやるためにはリンク時最適化が必要だし
後者ならメンバの可視性をLLVMに渡さないといけないと思う
rustcとLLVMはそこまでやってるの?

636 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 22:54:00.11 ID:E86JsxIR.net]
rust結構面白いからマイクロソフトがVisualStudioでRustでWindowsFormを作れるようにしてくれればなあ

637 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 22:59:17.60 ID:MphJhZqp.net]
>>618
それが>>566の2行目で書いてる工夫のことだよ
boolではなくchecked_add使ってOption<()>返すメソッドにしておけば?演算子でシンプルに書ける

638 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 23:07:42.57 ID:McWr7xMA.net]
>>627
assignでない演算は生成のため内部でcloneが発生して無駄と既に結論が出ている



639 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 23:11:14.31 ID:0LaPlWrL.net]
GATがstableになるの意外と近い予定なんだな
年単位で先のことかと思ってた

640 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 23:18:22.58 ID:H16c0lbs.net]
>>625
Rustでそれは起きない
書き換えるには所有権か&mutが必要でコンパイラは全て把握している
更に構造体のメンバーはpub指定がない限り他者はアクセス不能
つまり今回ならばnext()しかメンバー書き換えしないとコンパイラは確定できる

641 名前:デフォルトの名無しさん mailto:sage [2022/06/12(日) 23:25:01.40 ID:geXDvND7.net]
>>630
その最適化するのはLLVMだけどLLVMが最適化できるだけの情報を渡してるの?というのが聞きたいこと

642 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 00:14:58.10 ID:RutuvYDu.net]
>>623
その通りRustコンパイラが賢いことを確認したよ
is_overflowが常にfalseとなることを察知してNoneを返すことが無くなったみたい
Noneが来ない利用側のwhile let Some(n) = iter.next()は無限ループのコードとなっちゃった
さらにwhile loopより後ろのコードは永遠未達と判断されて完全に消えた

643 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 00:32:02.84 ID:XmIGhHAx.net]
>>628
checked_add使うのはプリミティブだけだよ
BigUintはadd_assignで常にSome(())

644 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 00:46:44.89 ID:BEV+i+nu.net]
>>620
GATってIteratorとか既存TraitのAssosiate Typeに直接ライフタイム書けない仕様になったの?
LendingIteratorみたいに別のTraitを使わないといけないようならイテレータ関連の仕組みが2重なって使い勝手が悪い

645 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 00:50:16.18 ID:WmCB7dh7.net]
>>633
意味不明
Some(())/Noneにするならば>>618のbool値のコードで十分

646 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 00:56:09.87 ID:WmCB7dh7.net]
>>634
もちろん出来るようになる
今は無理だからRust公式ブログで解説された例に倣って仮にLendingIteratorとの名で定義して使うなどする

647 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 12:04:19.24 ID:GDAgVCx4.net]
>>632
おー、そんな賢いんだ。すごい
ちなみにfn mainとイテレータの定義は同じcrateに含まれている?
lib crateでイテレータを定義してbin crateから使った場合にどうなるかも気になる

648 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 14:28:57.42 ID:HonuYlRO.net]
>>626
こういうMicrosoftからのサポートは俺も期待してる
VC++よりもRust書きたい



649 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 17:16:12.55 ID:GB/2aB1F.net]
やめてくれ
汚コードまみれになる

650 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 19:44:34.63 ID:oVc0GyRX.net]
乱数系のモジュールの仕様変更がかなりガッツリあったみたいなんだけど
Rustってこういうことよく起るの?
なんかWeb系みたいなノリを感じたんだが合ってる?

651 名前:デフォルトの名無しさん [2022/06/13(月) 19:57:14.15 ID:86dwWfAN.net]
なんのはなしだ

652 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 19:58:13.01 ID:8KDu5nut.net]
>>640
人に読んでもらう文章は重要なところ省いたら読んでもらえないよ

653 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 19:59:25.24 ID:GDAgVCx4.net]
>>640
標準ライブラリで破壊的変更はほとんどない
外部crateなら概ねsemverに従ってるし lockfile の仕組みもあるから、
以前ビルドできていたものがビルドできなくなることもほとんどない

654 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 20:37:45.98 ID:XXqnAuVB.net]
>>638
サポートってどの程度のサポートを期待しているんだ?
MSがRustコンパイラー出せばWindowsのRust用フレームワーク出すんだろうがな
出さないなら、C/C++/C#のAPI/フレームワークをRustからとりあえず使えるようにしました
程度のサポートになるだろう。
期待しているのはRust用フレームワークであってRustからとりあえず使えるよじゃないだろ? []
[ここ壊れてます]

656 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 20:37:53.20 ID:oVc0GyRX.net]
>>643
あれ外部ライブラリか
しかし乱数系の標準ライブラリってまだRustにないのか
やぱ若い言語だなRust

657 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 20:43:42.90 ID:cs6TlBtz.net]
>>645
若いというか意図的に標準ライブラリから外してあるよ
理由は標準入りしてしまうと破壊的変更ができなくなって腐るから
だから将来的にも標準に入る予定はないと思う

658 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 20:52:20.46 ID:oVc0GyRX.net]
>>646
意図的に外してるの?
ふーん、それはそれで面白い



659 名前:デフォルトの名無しさん mailto:sage [2022/06/13(月) 23:01:34.06 ID:JmWkv6oB.net]
>理由は標準入りしてしまうと破壊的変更ができなくなって腐るから

なんという本末転倒感

660 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 00:25:58.88 ID:DOq4xEj+.net]
基本的にRustはシンプルに最小限の言語構成部分しか標準ライブラリに持たない方針
つまり各プログラミング言語毎に標準ライブラリの意味合いや範囲が異なるのと同じ
だから乱数でも正規表現でも何でもRustでは外部クレートに存在する
非同期だって基本構成部分のasync/await/Futureは言語として持つけど
非同期ランタイムや非同期ライブラリは外部クレート

661 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 00:42:56.77 ID:OVbm/pyy.net]
OptionやResultの便利メソッドはどんどん追加されてるし別に標準ライブラリを最小限のものにしようとはしてないでしょ

662 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 00:49:05.73 ID:o3U2MVOf.net]
>>649
>最小限の言語構成部分しか標準ライブラリに持たない方針
俺もそんな方針だと思う
これが良いのかどうかは分んが。
標準ライブラリだとコンパイラ屋がコンパイラを出す限りサポート・メンテされるのが
他の言語では標準ライブラリなのが外部クレートだと、将来これをメンテする奴がいないになって
放置になり困ったになる可能性あるからな。

663 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 01:01:42.50 ID:DOq4xEj+.net]
>>650
それは最小限の意味合いの受け取り方が違っているだけで同じ
Option/ResultはRustにとって言語構成部分
そしてそのメソッドは強いて言えば多彩な制御構文にも相当する
だからRustの最小限の標準ライブラリに含まれているし必要性が認識されればメソッドも増える

664 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 01:15:57.14 ID:DOq4xEj+.net]
>>651
それは「サポートする人がいなくなればサポートされなくなる」という当たり前のことでRustとは別の一般的な話
どんな製品でも、どんなライブラリでも、どんな言語でも、同じ
そして基本構成部分を含むRust本体の改善&メンテと、それ以外のライブラリのそれとは明らかに別の話たから切り離されているのも自然

665 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 01:33:47.46 ID:Sv0LbY5c.net]
同じではあるがcargoの性質で余計に面倒な状態になってる。
この辺が低レイヤー向けと相性が悪い部分だな。

666 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 02:16:38.57 ID:DOq4xEj+.net]
>>654
低レイヤー向けのプログラミングをRustでしていて相性の悪さで困ったことはないが具体的に何だろう?

667 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 02:19:17.55 ID:0h5AdYzJ.net]
聞きかじりだけどクロスコンパイルとかやりたかったらxargo使うもんなんじゃないの

668 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 02:25:36.70 ID:RiQN/QJO.net]
同梱されるライブラリが巨大な言語で
とんでもないクソ仕様が最初に入ってしまうとか
メンテナがいなくなったけど互換性維持で簡単に削除できないとか
色々あるからなあ



669 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 02:36:05 ID:OVbm/pyy.net]
>>652
確かにOptionやResultそのものは言語機能にも関わってくる基本的な構成要素だけど、
OptionやResultの便利メソッドは外部crateでも定義できるよね
また、HashMapやBTreeMapなどは "言語" の構成要素ではないし、
最近ではonce_cellという外部crateで実現できていたものをstdに取り込もうとしている
"言語" を構成する最小限の要素に絞るのであれば、これらは外部crateで実現すればよくて標準ライブラリに入れなくても良いはずだよね

おそらく、標準ライブラリに取り込むものは厳選してコンパクトさを保つことを前提に、
広く使われていてAPIが安定しているものは取り込んでいくというスタンスなんだと思うよ

670 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 02:42:44 ID:OVbm/pyy.net]
あー、rustで書かれたプログラム全体の中でのデファクトスタンダードとかお作法とかも含めて言語って言っているのかな
そうなのであれば特に異論ないです

671 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 02:45:28 ID:xoZMylRu.net]
マンパワーが足りないから選択と集中で切り捨ててるだけ
利用者がそれを受け入れてるのは切り捨てた部分をコミュニティで支援するからコア機能の開発に力を注げってこと

672 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 02:53:05 ID:R/3cLRA4.net]
>>657
iostreamのことかああああ!!

673 名前:デフォルトの名無しさん mailto:sage [2022/06/14(火) 03:08:52 ID:aUgYAX3K.net]
>>661
アレをRustに取り入れようという動きはないのかな?

674 名前:デフォルトの名無しさん [2022/06/14(火) 18:56:17.12 ID:HX1wvnNi.net]
>>648
利便性ではなく一貫性で標準を決めているってことだろ

675 名前:デフォルトの名無しさん mailto:sage [2022/06/15(水) 14:46:59.83 ID:LjsAAUyE.net]
>>658
Rustの利点はOption, Resultがmatchなどの構文で評価できる事、演算子もあるが演算子オーバーロードができる言語であれば同様のことができてしまうがC++23とか26とかで提案されていたinspectはmatchそのもの

676 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 15:29:08.46 ID:13+3Y2cU.net]
Rustの活用でElectronよりも軽くて速いアプリフレームワーク「Tauri」が安定版に

まずはデスクトップから。モバイル・Webへの対応も進行中

https://forest.watch.impress.co.jp/docs/news/1417148.html

677 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 16:07:33.42 ID:Ry+36K98.net]
TauriとYewで純正Rustデスクトップアプリ開発か、
あるいはTauriとVue.jsでフロントエンドのみJavascriptでデスクトップアプリ開発か、

678 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 16:51:56.72 ID:TPrqrDPX.net]
Tauri + Vite + Vue 3 + Vuetify 3でデスクトップアプリ開発オラァ!!!



679 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 19:39:52.77 ID:3W1WJ+ID.net]
そういやAtom開発者がRustで書き直した究極のエディター「Zed」はどうなったんや。
https://forest.watch.impress.co.jp/docs/serial/yajiuma/1374/986/amp.index.html

680 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 19:54:27.31 ID:hIo52KfN.net]
>>665
PC Watchが報じるほどのニュースか、これ?

681 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 20:36:05.07 ID:qYRKaF3V.net]
>>668
>>UIフレームワークには、GPUを活用した新設計のものを用意。このフレームワークは「GPUI」と呼ばれている。

これがどうなるかだな

682 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 20:52:57.67 ID:rVOBJfNW.net]
フレームワークおじさんきちゃったか

683 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 21:28:18 ID:5USgn4My.net]
rust製フレームワークの話なら歓迎、jsは該当スレでよろ

684 名前:デフォルトの名無しさん mailto:sage [2022/06/16(木) 22:27:59.11 ID:/ddt6fDk.net]
>>670
俺的にはそれなんかバックにC/C++のVulkan系を用いたものって気がするんだよな

685 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 01:45:23.89 ID:mZKsuJMX.net]
rustでgpuなんか使い始めたらライブラリぶっ壊れまくるぞ

686 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 08:27:34.98 ID:8YmvneAf.net]


687 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 15:39:33.09 ID:NH7eG327.net]
俺も今日からラスタシアンだからよろしくな
シャドーイングいいねアンダースコアで区切った同じような名前の変数が同一スコープ内に増え続けるのが嫌でイライラしてたらからこの仕様はめちゃ好き

688 名前:デフォルトの名無しさん mailto:sage [2022/06/17(金) 17:57:54.34 ID:gT1dTx1o.net]
>>676
カタカタで書くとラステイシャ



689 名前:唐ゥラステイションだからよろしくな []
[ここ壊れてます]

690 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 06:02:27.98 ID:ib599DIL.net]
全然関係無いんだけど
最近の言語って使ってる人達に名前つけるじゃん
パイソニスタとかPHPerみたいな
CとかC++にもあるのかなー?とか考えてた時に思い出したんだけど
Pythonでモヒカンとか言ってる人達いるじゃん
アレの語源は何なの?

691 名前:はちみつ餃子 mailto:sage [2022/06/18(土) 11:43:40.01 ID:vGEU23LW.net]
>>678
Python 関連の用語としては知らんけど、これのこと?
https://ja.wikipedia.org/wiki/%E3%83%A2%E3%83%92%E3%82%AB%E3%83%B3%E6%97%8F_(%E3%83%8D%E3%83%83%E3%83%88%E7%94%A8%E8%AA%9E)

692 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 11:52:07.94 ID:quioMmSC.net]
モヒカン族とか、一部の人間が使ってるだけでネットではろくに聞かない言葉だね

693 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 12:19:14.82 ID:ib599DIL.net]
>>679
どうもありがとう
ネットスラングだったのか
でもPython界隈以外で聞いたことないや

694 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 12:29:31.13 ID:XkkeHcIr.net]
俺は本場海外の用語以外は一切使わない陰キャチー牛の日本人が勝手な造語の和製英語とかクソダサいからな

695 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 12:41:40.55 ID:rUpNWN/L.net]
2005~2010頃の技術コミュニティではよく聞いたけど
最近はアンチハラスメントポリシーに抵触するから使われなくなった

696 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 13:28:43.26 ID:n5ZvcUIJ.net]
Rust サビちゃん
Python ヘビちゃん

697 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 13:35:45.47 ID:n5ZvcUIJ.net]
サビちゃんでもありヘビちゃんでもありヘジたんでもあり職場では犬たん++

698 名前:はちみつ餃子 mailto:sage [2022/06/18(土) 13:37:07.64 ID:vGEU23LW.net]
>>678
C 使いや C++ 使いのことは Cer とか C++er と書いたりすることはあるが、どう読むべきなのかわからぬ……。



699 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 13:42:03.39 ID:n5ZvcUIJ.net]
>>686
社畜

700 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 13:48:09.17 ID:n5ZvcUIJ.net]
この世の中あまたの言語があるのになぜCやC++でコード書くかと言えば仕事だから

701 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 14:09:02.52 ID:XkkeHcIr.net]
普段仕事でC++使わない俺からするとRustめちゃくちゃわかりやすくて触ってて楽しい
特に配列やコレクションの扱い易さが段違いだわ

702 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 14:30:49 ID:n5ZvcUIJ.net]
>>689
まあ他の言語触ると扱いやすくて気絶するから触るな

703 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 14:57:08.56 ID:iczP/r4h.net]
※お話の途中ですが蟹が通ります
      ,、_,、     
 三  ( ´・ω・`) 
  三 /ヽ  /ヽ        (V)  (V) 
  三ノ  ̄ ゝ      三 ミ (´・ω・`) ミ
     タタタッ                 サササッ

704 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 15:02:32.97 ID:hqbe2tQH.net]
そのカニもらって食べちゃうね

705 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 15:34:56.20 ID:XkkeHcIr.net]
命名規則のガイドラインがスネークケースなのがC/C++に配慮した結果なのかなぁって気がするけどまぁ慣れの問題だから文句ないよ

706 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 19:21:06.68 ID:M9fy3K3m.net]
公式ドキュメントにRustは式指向言語ですってあるんだが式指向とはなんぞや?

707 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 19:25:35.79 ID:1ZLmOyHM.net]
制御構文が文じゃなくて式になってて値を返すという意味かと

708 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 19:54:48.42 ID:vxK0JF3c.net]
終端にセミコロンつけたら式じゃなく文になっちゃうとか独特だよね
fn five() -> i32 { 5 }とかfn five() -> i32 { 5 };って書けた方が違和感ない気がするんだけどね



709 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 20:32:50.72 ID:aTjkq+5e.net]
Rustはラムダ引数の型推論が多くの他の言語とは異なって機能するんだよ

710 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 21:11:11.71 ID:6CHzGsUP.net]
最近、ゲームのRustが人気過ぎて検索に支障が出てる

711 名前:デフォルトの名無しさん mailto:sage [2022/06/18(土) 22:17:14.37 ID:ZZmk5y2Z.net]
>>694
日本語訳は公式じゃないから
今はもう公式では式指向(expression oriented)という言葉は使われてない

式指向言語の意味を知りたければwikiでもどうぞ
https://en.wikipedia.org/wiki/Expression-oriented_programming_language

712 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 00:35:13.44 ID:HLAvlKQn.net]
VTuberやストリーマーの間で人気を博しているサバイバルゲーム「RUST」とは?
https://www.moguravr.com/vtuber-rust/

713 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 01:08:17.73 ID:WtnMKA9r.net]
Goを見習って、Rustlangで検索してくださいね

714 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 05:08:01.71 ID:UsMsALi7.net]
rust lang OR 言語 -go

715 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 07:36:52.36 ID:kKndzz48.net]
Rustではboolを論理値と訳してるけど言語ごとに揺らぎがあるのはなんでだろうね
個人的に真偽値を使ってるけど真理値って解釈もあるしこれも定義は別で厳密には違うけどRustとしては解釈は同じで違いはないってことなのかな

716 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 08:12:44 ID:Nk1h87ob.net]
作った人が違うんだから揺らぎがあるのは当然だろ

717 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 09:35:04.20 ID:pSFkutGr.net]
作った人というより訳した人の違い
Rustの日本語書籍でも統一されてるわけじゃない
論理値はもともとlogical valuesの訳語

>Rustではboolを論理値と訳してるけど
正しくは「The Bookの日本語訳ではBooleanを論理値と訳してるところがあるけど」

718 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 09:50:34.90 ID:KbscZGS+.net]
手元のRust本見てみたけど真偽値も真理値もあるね
個人的には真偽値かな



719 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 10:18:36.03 ID:MGBoiv+i.net]
型は論理型と言いたくなる。真偽値型ってのもたまに聞くけど。

720 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 10:32:50.28 ID:YciZ0/bi.net]
ブール型でええやん

721 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 11:02:28.95 ID:McUuM60V.net]
the bookの日本語訳は翻訳の質が低いしアップデートもされてないからrustを本気で勉強したい人は読まない方がいいと思う

722 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 11:11:00.25 ID:KAsrUTco.net]
https://jp.mathworks.com/help/matlab/logical-operations.html
> logical データ型を使用して boolean データを表現します

matlabではlogicalってデータ型があって中身は0か1
false, trueも結局はlogicalの0と1でしかない

https://doc.rust-lang.org/std/primitive.bool.html
> The bool represents a value, which could only be either true or false.
> If you cast a bool into an integer, true will be 1 and false will be 0.

一方rustではtrueもfalseも依然としてboolのまま

723 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 11:23:29.55 ID:2cctUuao.net]
ブール値のブールの意味を知らん人が多いのかもしれない
ブール値より真偽値型がいいな

724 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 11:33:06.55 ID:YciZ0/bi.net]
boolの意味なんか一般アメリカ人も知らんだろ

725 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 12:03:30.22 ID:dg+pb++y.net]
>>710
値の呼び名の話と、内部表現の話と、castせず別の型の値として利用可能かどうかという3つの異なる話を混同してる

726 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 13:11:53.53 ID:61bWOpc5.net]
ワットとかアンペアの語源を知ってるかって話?

727 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 13:14:46.84 ID:vUT9u2r3.net]
Rustを含めたほとんどの言語で
logical or/and/notと呼び
まとめてlogical operatorと言い
日本語で論理演算子と称するから
その対象となるbool値も論理値と訳すことが多く賛同だが
訳さずbool型とbool値のままが曖昧さがなくよいのではないか
もちろん文字列型も訳さない方がよい

728 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 13:33:48.08 ID:vE0AzMds.net]
おまえらってほんとう用語の定義とかそういう話になると生き生きしよるな
あと「許可されないなんちゃら」みたいな法律家談義みたいな話



729 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 13:35:46.28 ID:Nk1h87ob.net]
>>714
自分の呼び方が正しいんだー
っていうキチ同士の争い

730 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 14:12:32.07 ID:T+HLe5Kk.net]
>>714
ジュールとかニュートンのほうが先に頭に浮かんだ

>>716
とはいえ「所有権の複製」は見過ごせないって

731 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 14:17:42.75 ID:kKndzz48.net]
これはプログラミングに限定した話ではなく他のカテゴリでも用語を英語に統一すべきだと思うんだよな
世界の大学ランキングで日本の大学が少ないのは教科書や専門書が英語の国が対象だから教科書や専門書が日本語で学習できる日本はレベル高くて母国語ではなく英語でしか学べない他の国がレベル低い土人国家だと言ってるやつがいるけど逆じゃねーの?って思う

732 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 14:55:53.98 ID:8/kH/R2d.net]
自転車置き場の議論

733 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 15:31:58.19 ID:N+aRTDUf.net]
>>719
英語じゃなくてラテン語を

734 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 17:52:40.64 ID:fArfwr+a.net]
>>719
はぁ? 何を甘っちょろいこと言ってんだ。
日本語を押し付けていく気概もなしに学問をリードできるかいな。

735 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 18:18:54.31 ID:lfAX8IzG.net]
>>722
日本語だけは絶対にイヤ
Rubyも英語だったろ?英語でいいんだよ

736 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 18:25:22.30 ID:ZgRIQXP3.net]
>>723
なぜRuby?

737 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 19:22:19.06 ID:xSCrTfK1.net]
高階関数の解説を読むたびに出てくるカリー化がそれオーバーロードでよくね?って思うんだが誰か納得感ある説明頼む

738 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 19:29:05.73 ID:YciZ0/bi.net]
>>725
カリー化は、ElmとかF#みたいなパイプライン演算子を多用する言語じゃないとありがたみを感じない



739 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 19:43:10.79 ID:Iqvgk6im.net]
なんとRustには関数オーバーロードが存在しないのだ!
だからトレイトでクソ面倒臭い実装でむにゃむにゃしないと実現できない!
でもそんなことして何が嬉しいのかわからない!
Rustは可変長引数もないしC++と比較してまだまだ機能的にはぜんぜん追いついてないよ

740 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 19:47:20.02 ID:WtnMKA9r.net]
そうですね
あなたはRustではなくC++を使い続けてください

741 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 20:02:56.72 ID:61bWOpc5.net]
カリー化ってオーバーロードで代替できるのか?

742 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 21:29:31.34 ID:10dVJy7y.net]
// 引数2つの関数 (例としてたまたま足し算)
let add_x_y = |x, y| x + y;
assert_eq!(5, add_x_y(2, 3));

// 引数1つの関数をそこから作り出す (カリー化)
let add_x = |x| move |y| add_x_y(x, y);

// 段階適用
let add_2 = add_x(2);
assert_eq!(5, add_2(3));

// 一気適用
assert_eq!(5, add_x(2)(3));

743 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 22:04:00.15 ID:gGrS7GAs.net]
>>725
関数を書くたびにカリー化のためのオーバーロード書いていくのは面倒くさすぎるでしょ

744 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 22:26:44.97 ID:fArfwr+a.net]
カリー化なあ……
rust だとライフタイムの管理がちょっと複

745 名前:Gになると手におえんだろ
理屈はともかくとして、普通のプログラマにとっては割に合わない
[]
[ここ壊れてます]

746 名前:デフォルトの名無しさん mailto:sage [2022/06/19(日) 22:32:20.86 ID:8/kH/R2d.net]
https://ja.cppreference.com/w/cpp/language/overload_resolution

これを少しでも理解しようとしたことがあるなら、RustにC++並の無制約なオーバーロードが欲しいとは思わないだろうよ

747 名前:デフォルトの名無しさん [2022/06/20(月) 06:57:08.63 ID:E2oosySA.net]
安直に引数個分のダミーパラメータを与えるカリー化マクロcurry!を用意してみた
macro_rules! curry (
($func_name:path, $first_arg:ident $(, $arg:ident )*) => {
|$first_arg| $(move |$arg|)* $func_name($first_arg $(, $arg)*)
};
);

引数が2つの例
let add = |x, y| x + y;
let curry_add = curry!(add, a, b);
assert_eq!(curry_add(1)(2), add(1, 2));

引数が5つの例
let func = |p, q, r, s, t| p + q * r - s / t;
let curry_func = curry!(func, a, b, c, d, e);
assert_eq!(curry_func(5)(4)(3)(2)(1), func(5, 4, 3, 2, 1));

標準ライブラリの文字列replace関数をカリー化
let curry_str_replace = curry!(str::replace, src, old, new);
assert_eq!(curry_str_replace("abcdefg")("cde")("CDE"), "abCDEfg");

let 自己紹介 = curry_str_replace("私の名前は_NAME_です")("_NAME_");
assert_eq!(自己紹介("名無し"), "私の名前は名無しです");

意外にそこそこ使えた

748 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 07:08:36.46 ID:10Lmd2dP.net]
>>733
rustを作る側からしたら嫌かもしれんけど、使う側からしたら有ったほうがいいんじゃない?
まぁ、俺がオーバーロードがある環境に慣れちゃってるからかもしれんけど



749 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 07:31:28.70 ID:iAqd5FsI.net]
シャドーイングは許容できて関数のオーバーロードが許容できない理由ってなんだろう

750 名前:デフォルトの名無しさん [2022/06/20(月) 07:34:05.79 ID:E2oosySA.net]
>>735
クロージャ多用のRustでオーバーロードってどうするの?
例えば>>734に挙げた例でカリー化を同名でオーバーロードにする場合
let add = |x, y| x + y;
let add = curry!(add, a, b); // = |a| move |b| a + b;
assert_eq!(add(1)(2), add(1, 2));
この引数の数が異なる二つのaddの存在をオーバーロード

751 名前:ニして許すの?
オーバーロードのある言語ではこの問題をどう解決しているのだろう
[]
[ここ壊れてます]

752 名前:デフォルトの名無しさん [2022/06/20(月) 07:44:20.63 ID:E2oosySA.net]
>>736
シャドーイングは同時に存在できるのが一つだけで曖昧さがなくプログラミングにおいてプラス効果
オーバーロードは同時に異なるものが存在できるため可読性を下げたりミスを起こす機会を生じさせてマイナス効果

753 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 10:29:58.07 ID:anfwvwwH.net]
>>735
読む時にはどのオーバーロードが呼ばれるのかを確認するのが面倒
RustだとT, &T, &mut T違いもあるから他の言語よりもさらに面倒
メリットよりデメリットのほうが大きいと感じる人が多いんじゃないかな


デフォルト引数/オプション引数/キーワード引数はいずれ導入して欲しい
乱用されるとAPIが汚くなるがオーバーロードほどのデメリットはないと思ってる

754 名前:デフォルトの名無しさん [2022/06/20(月) 10:47:53.81 ID:1agQsnkM.net]
真理値なんてどんなアホが訳してんだ

755 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 11:11:29.76 ID:G0GSIi1k.net]
元の英語から違うので訳の問題ではありません (truth value)

756 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 11:17:59.13 ID:c9A58FBc.net]
logical values 論理値
truth values 真理値
true or false values 真偽値
Boolean values ブール値

ブール値じゃ分かりにくいと仮定して論理値、真理値、真偽値のどれを選ぶかってこと
the book日本語訳の人はRustの文脈での分かりやすさよりも土台となってる分野で広く使われてる訳語がいいと判断することが多い印象

757 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 11:29:41.63 ID:qsA991ej.net]
まぁプログラマーでござい(ドヤッ!な勘違いの陰キャチー牛の癖に英語読めないポンコツなの日本人くらいだからなwww

758 名前:はちみつ餃子 mailto:sage [2022/06/20(月) 12:24:24.66 ID:6BcBi/VL.net]
同じ意味とされることもあるが、若干のニュアンスの差もあると思うんだよな。
ブールはブール代数から取ってるんだから当然に代数的な操作に使うという感覚があるし、
真理値は論理学の方面で抽象的な概念 (命題とか集合とか) に対応付く場合もある気がする。
個人的には論理値が最も中立というか、ただ真と偽の値を持つものという雰囲気を感じる。

ブール ⊂ 真理値 ⊂ 論理値 な感じ。



759 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 12:43:05.08 ID:G0GSIi1k.net]
たかが二値論理の値の型でしかないものを誰がboolだのbooleanだの呼び始めたのかと思って調べたらALGOL60だった

760 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 12:43:22.11 ID:zDrv1zgC.net]
真理値だけは3値以上の場合も含むからちょっと意味が広い感じはする

761 名前:デフォルトの名無しさん [2022/06/20(月) 13:11:27.43 ID:bsAvnwWF.net]
関数オーバーロードをありがたがってるのはジャバの連中だけ

762 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 15:32:26.58 ID:nUFjxYTv.net]
論理値は非古典論理の値も含むからさらに広いな。

763 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 15:34:13.37 ID:rudBfZT/.net]
>>746
どれも注記がなければ二値だけど
three logical valuesやthree-valued Booleanと言えば3値になりえるので
基本的に意味するところは同じだと思うよ

764 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 16:12:28.65 ID:Wp6+mQEy.net]
>>749
確かに論理値も多値ありうるのか
真偽値もそう?これ字面からは2値限定な気がするけど

765 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 16:33:57.18 ID:vXHoc6MR.net]
どうでもいいけどwasmerがaarch64 完全対応したということで、rust+wasm+wasmerでcliを試してみたけど完全にただのjavaで草生えた

766 名前:はちみつ餃子 mailto:sage [2022/06/20(月) 16:55:48.44 ID:6BcBi/VL.net]
Wasm は JVM より低レイヤ寄りだから設計思想は違うんだが……。
でも Java がやってた領域をかなり奪うとは思う。

Android で JVM を使っている部分を Wasm に置き換えたような OS とかもその内に出てくるんじゃないかね?

767 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 17:33:23.64 ID:ib2o9qWW.net]
個人的にWasmよりもTauriの方が開発環境構築がめちゃ楽でシンプルだから好き
クロプラの一番の課題って今も昔も設定の煩わしさだよね俺はconfigマスターになりたいわけじゃねーんだよ!
モバイル対応がまだだけどちゃんと予定はあるからTauriが流行ってほしいな

768 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 17:52:06.79 ID:cgMFd80D.net]
wasmとtauriって別にそういう競合するポジションとかじゃなくね?



769 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 17:55:14.20 ID:JDT/MbKD.net]
Tauriはただのwasmのレンダラーだよ。Chromium内蔵をやめて実装をRustにしたElectron。
wasmerはレンダラーしないwasm実行環境。

770 名前:デフォルトの名無しさん [2022/06/20(月) 17:56:48.16 ID:E2oosySA.net]
>>744 >>748
Rustの公式referenceでもbool値に対してのoperatorをlogical and やlogical orと明記されているから日本語訳は論理値でもよいのではないかな

771 名前:はちみつ餃子 mailto:sage [2022/06/20(月) 18:19:59.87 ID:6BcBi/VL.net]
>>756
論理和・論理積に対応する英語は logical disjunction / logical conjunction であって、 logical or / logical and ではない。
(でも演算子として OR / AND を使った表記をすることはよくあるし……。 カジュアルな場面では曖昧だったりするのかな?)

logical or / logical and は bitwise or / bitwise and と区別するために新しく作られたプログラミング用語として考えるべきで、
もちろん過去からの様々な分野の用語を踏襲してはいるにしてもあまり対応づけて考える必要はないと思う。
bool は人名 (固有名詞) に由来するんだからそのままブール値と訳すのに一票。

772 名前:デフォルトの名無しさん [2022/06/20(月) 18:37:04.96 ID:E2oosySA.net]
>>757
まずRustを含めてプログラミング用語の話においてのみboolが出てくるのだから他へ話を広げる必要なし
次にbitwise andに対してboolean andと言わずにlogical andと用いられているのはlogicalが説明としても用語としても妥当であるため
日本語としてもカタカナ訳語を使う必要はなく論理値や論理演算子でよいのではないかな

773 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 18:41:04.35 ID:cgMFd80D.net]
自転車置き場の議論楽しいんんねええええ

774 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 18:45:53.95 ID:fDP2JAl4.net]
Tauriのモバイル対応はwasmのUIフレームワークの整備が進んでいないから、まだいいかな
このままモバイル対応しても、せいぜいReact Native アプリのバックエンドがwasmになって実行速度を少し改善するくらい
全てはWASM実装可能なUIフレームワークの成長次第だから、Yewは頑張ってくれ!

775 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 18:51:29.68 ID:vXHoc6MR.net]
もしreact 自体をウェブアセンブリとしてビルドできたら、、革命起きそう

776 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 19:08:40.42 ID:MJF5Q/rm.net]
>>761
できる可能性はあるぞ
https://github.com/Shopify/javy

777 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 19:10:28.51 ID:Lqu2R1w+.net]
Reactはもういいよウェブベースのクロプラフロントエンドフレームワークの問題を凝縮した実装だから早く消えてほしい
ライフサイクルと状態管理を開発者に丸投げすることを正当化させた罪は重い
MSのオールインワンな開発環境がエンタープライズ分野で今でも支持される理由ってここだと思う

778 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 19:13:28.43 ID:j7veV6LL.net]
MSのweb開発フレームワークとプラットフォームはくそじゃん



779 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 19:27:45.70 ID:JN5oCIkY.net]
>>752
近いものがあるね
webvm.io

780 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 21:40:21.97 ID:W1rh1Xym.net]
>>755
ん?言ってる意味がわからないんだけどTauriのUIレンダリングプロセスはJS/TS/ReactなんかのウェブベースのフロントエンドFWだが?
Chromiumやnode.jsをバイナリに含めずプラットフォームのWebView(WenKit)を使うからサイズが小さいのだが?
レンダラーがWasmってどういうこと?具体的かつ納得できる説明よろ

781 名前:はちみつ餃子 mailto:sage [2022/06/20(月) 21:43:08.29 ID:6BcBi/VL.net]
DOM (またはそれの元になる html や JavaScript とかも含むのかも?) を生成することをレンダリングと呼ぶ界隈が存在するぞい。

782 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:04:16.75 ID:x7QB4AuO.net]
>>766
>>JS/TS/ReactなんかのウェブベースのフロントエンドFW
フロントエンドに使えるフレームワークはjavascript系に限らないよ例えば上コメにあるYewとか

783 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:08:03.20 ID:j7veV6LL.net]
その前に
> レンダラーがWasmってどういうこと?


誰もこんなこと言って無くね?

784 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:20:30.26 ID:G0GSIi1k.net]
「wasmのレンダラー」の意味不明度が高すぎて混乱しているのだろう……

785 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:33:21.69 ID:vXHoc6MR.net]
wasmのレンダラーっていうのはtauri+yewの組み合わせなら間違ってないよ
彼はtauriがreactやvueもレンダリングできるってことを言いたいんじゃないの?
tauriはwebviewのrustやjavascriptのバインディングを提供するフレームワークだと自分は解釈してる

786 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:43:18.28 ID:vXHoc6MR.net]
ちなみにjavascriptバインディングの無い既出の"web-view"ってのがcrate.ioにある
こっちは正真正銘wasmのレンダラーよ
https://crates.io/crates/web-view

787 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:49:34.14 ID:RTpsTrZi.net]
だからwasmのレンダラーっていう書き方が悪いだろうよ
頭の悪いひとたちのために「wasmをレンダーするひと」って書け

788 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:54:18.58 ID:X5CbdNui.net]
Tauri can render JavaScript and WASM and more.
ほら、これでいいか?



789 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 22:57:56.00 ID:nM7DxFpE.net]
UIフレームワークの話なんか何が面白いの?

790 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 23:01:44.97 ID:DwXFtGxu.net]
さあ?

791 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 23:01:47.43 ID:FYZjQUUW.net]
>>775
わかんね
アーキテクチャの違いとかならまだ興味わくけどな

792 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 23:06:38.97 ID:FiNSG1Db.net]
まあフロントやらずにバックだけ開発の人には関係ない話だな

793 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 23:12:11.87 ID:2JvwDfXO.net]
違う話題って事で
「Rust for Rustaseans」って本めっちゃいいぞ
オライリー本やThe Bookの入門レベルを終えてある程度Rustでプログラム書いた後に読むといい

794 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 23:14:12.29 ID:2JvwDfXO.net]
スペル間違ってた
恥ずい

795 名前:デフォルトの名無しさん mailto:sage [2022/06/20(月) 23:19:15.21 ID:j7veV6LL.net]
>>779
なかなかそのレベルまで遠いんだろうな

796 名前:デフォルトの名無しさん [2022/06/21(火) 01:19:44.55 ID:rZ1ZoU3X.net]
>>773 >>774
二人ともおかしい
wasmをレンダーすることはない

一般的にレンダリングとは抽象データから実データを生成すること
今回はTauriの話のようだからレンダリングは2階層あって
1つはTauri上で作るアプリが自分のデータからDOM(HTML)を生成するレンダリング
もう1つはTauri自体がそのDOM(HTML)からコンピューター画面へ描画生成するレンダリング

wasmが関係するとしたら前者
つまりwasm上で動くアプリがDOMを生成するレンダリング
wasmを使わない昔からのやり方ではJavaScript上で動くアプリがレンダリング
つまり対比点はwasmがレンダーするかJavaScriptがレンダーするか、とも言えることから

>>766
> レンダラーがWasmってどういうこと?

ここへ繋がるのではないかと推測
つまりRustコードを書くだけでアプリ作成を完結できるか否かの話にみえる

797 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 01:28:03.75 ID:rVN8NDnU.net]
>>737
ローカルな宣言はシャドーイング優先でいいんじゃない?
関数やメソッドがオーバーロード出来たらいいなぁくらいの気持ちなんで。デメリットとかはやっぱあるよね



>>739
やっぱめんどくさいかなぁ?
そういう言語しか使ってこなかったからいまいちわからんのよ。rustに慣れればやっぱこっち!てなるんかねぇ

798 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 01:29:27.34 ID:l/hCBOZ3.net]
今スレの怪文書頂上決戦

52 デフォルトの名無しさん sage 2022/05/16(月) 19:06:18.85 ID:78bNbDCr
>>49
デタラメすぎ
ムーブでビットパターンのコピーは発生しない
ビットパターンのコピーが発生するのは引数の値渡し等であってムーブとは関係ない
さらに引数の値渡しでのでビットパターンのコピーとCopyのコピーも全く異なる
Copyのコピーはディープであって高コスト

755 デフォルトの名無しさん sage 2022/06/20(月) 17:55:14.20 ID:JDT/MbKD
Tauriはただのwasmのレンダラーだよ。Chromium内蔵をやめて実装をRustにしたElectron。
wasmerはレンダラーしないwasm実行環境。



799 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 08:26:51.74 ID:82ugTJay.net]
TauriはJavaScriptやWebAssemblyをWebViewが理解できる機械語に変換するライブラリじゃないの?

800 名前:デフォルトの名無しさん [2022/06/21(火) 08:42:00.86 ID:X7xq+hMN.net]
オーバーロードがなぜ出来ないかって、型推論の完全性が失われるからじゃないの?

801 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 08:56:29 ID:TERGIQkG.net]
taui+webview==web rendererであってtaui≠=web rendererだから。
だからtauiがwasmやjavascript のrendererというのは間違い。
tauiを媒介したwebviewがwasmやjavascriptのrendererだから。

802 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 08:59:28 ID:vO+TReRM.net]
俺はフロントエンドやらないからこのスレでTauriの話をしないでくれ

803 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:03:37 ID:E/HTpvzq.net]
renderやらrendererやら、レンダーやらレンダラーやら、ややこしいなおい

804 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:08:13.67 ID:OsotcMPi.net]
オーバーロードは無くていい派

805 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:17:14.76 ID:rK2P992k.net]
ジェネリクスで表現できるくらいの自明なものはオーバーロードしてもいいけど
それ以上に挙動が変わるなら名前変えたほうがいいと思ってるから
結局オーバーロードは無くていいかな

806 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:18:38.16 ID:LcZeBWSd.net]
オーバーロードできないのは違和感あるけどすぐ慣れるぞ。頑張れ。

807 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:27:48.90 ID:e1jAZPeO.net]
>>784
言ってる本人が理解してないだけでwasmレンダラーって言い方はあるよ

808 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:38:22.89 ID:TERGIQkG.net]
TauriがElectronみたいにWebViewを内蔵してないから、TauriがWASMのレンダラーって勘違いしちゃったってことだな
よし解決したなUIの話はもう十分だろ



809 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:48:41.18 ID:aUxUUrSq.net]
古今東西ウェブのレンダラーってレンダリングエンジンのことじゃん
んで歴史あるASPを例にMS公式の解説を引用するならDSLのようにHTMLコードに変換(=レンダリング)する処理系ってことだよ
wasmモジュール(バイナリ)に変換するためのレンダラーはEmscriptenだからwasmがレンダラーって認識は間違い

810 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 09:58:17.91 ID:4fSeXEQO.net]
なぜそこでemscriptenが出てくるんだ?

811 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:01:09.64 ID:4fSeXEQO.net]
いい加減「wasmのレンダラー」を「wasmがレンダラー」と読むのやめたら?

812 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:03:06.58 ID:4fSeXEQO.net]
「wasmのレンダラー」は、wasmでビルドされたレンダラーじゃなくて、wasmバイナリを読み込むことができるレンダラーってことじゃないの?

813 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:04:20.02 ID:lcATvJP3.net]
>>795
それは視野が狭い
例えばウェブ業界でCSR(client side rendering)やSSR(server side rendering)と言うときのレンダリングとはHTML/DOMを生成することを指す
CSRはブラウザ等の中でそれを行なうのでReact等ではJavaScriptでレンダリングをするしYew等ではWasm/Rustでレンダリングする
つまりWasmでレンダリングするということはTauriでは全てのコードをRustで書けることになる

814 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:09:54.89 ID:l/hCBOZ3.net]
cssを読み込んで適用できるからってわざわざそのレンダリングエンジンのことをcssレンダラーって呼ぶことがあるか?

815 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:11:12.61 ID:5vOFCGpG.net]
>>797
Rust使いはASTまでは構築できてもそこから意味理解が弱いんだろうな

816 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:12:25.82 ID:D95D9dWE.net]
きみたちは一度これを読んだほうがいい
Rust GUI の決定版! Tauri を使ってクロスプラットフォームなデスクトップアプリを作ろう
Chapter 03 Tauri の概要
https://zenn.dev/kumassy/books/6e518fe09a86b2/viewer/168468
より
アーキテクチャ
Tauri のアーキテクチャを図示すると、次のようになります
https://storage.googleapis.com/zenn-user-upload/e215aef57b0a-20220610.png
Core Process はアプリケーション全体のライフサイクル管理を行ったり、 OS のインターフェース(メニューや通知など)の操作、 WebView Process の管理などを行います。
Core Process のコードは Rust で記述されるので、標準ライブラリも crate.io で公開されているライブラリも利用できます。 Tauri は非同期ランタイムとして tokio を利用しているので、非同期 Rust も使えます! Rust のコードはアプリケーションのビルド時にネイティブコードにコンパイルされるので、高速に動作します

WebView Process は Web コンテンツのレンダリングを行うプロセスです。通常の Web ページと同様に、 index.html, JavaScript, CSS から構成されて、 wry にラップされた WebView で動作します。
Tauri の JavaScript API を利用することで、 Core Process と通信したり、ファイルシステムにアクセスしたり、通知を表示する、などの操作が可能です。
WebView Process から WebView のサンドボックスを超えていろいろな操作できてしまうとセキュリティ上問題になることがあります。そこで、 tauri では JavaScript API で利用する API を allowlist に明示的に記述する必要があります。 Electron では preload スクリプトによって Renderer Process に公開する API を制限できましたが、同様の仕組みは allowlist で実現できます。

Tauri でアプリケーションを作ると Electron とは違い、 Chromium と Node.js 実行環境をバンドルする必要がないので、アプリケーションのサイズを小さく保つことができます

817 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:30:52.39 ID:ZcKPa2VS.net]
>>751 の、WASI実装のwasmerによるrustのVM言語化の話は興味深いけど、GUIフレームワークTauriの話はいい加減スレチ
Electronスレにでも行って議論してくれ

818 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 10:39:20.05 ID:lcATvJP3.net]
>>802にあるようにHTML/DOMから画面へのレンダリングはWebViewがしてくれるからアプリ開発者は関与しない
アプリ開発者が関与するのはアプリデータからHTML/DOMへのレンダリング部分のコードを書くこと
この点はWeb開発でもTauriでも同じ



819 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:04:51.42 ID:uvaWF54t.net]
結局怪文書の出どころはいつものオジだったww
いい加減聞きかじりで知ったかぶりするのやめたら?

820 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:08:08.11 ID:g+0qioKO.net]
間違いを指摘してくれる人が周りにいないんだろうな

821 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:11:56 ID:RyNZqEbO.net]
IDコロコロしないでほしいわせめて
コテハンつけてくれたらNG捗るのになあ

「所有権の複製」のときから思ってたけど

822 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:13:49 ID:7sQPW1UK.net]
tauriでNGすればおけ

823 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:26:02.71 ID:l/hCBOZ3.net]
じゃあ次スレこそはワッチョイつけようか

824 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:28:36.35 ID:pS+FR3pl.net]
wasmくんたちはコッチ
【wasm】ブラウザでC++。Emscriptenを語ろう
https://mevius.5ch.net/test/read.cgi/tech/1547549448/

825 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:38:04.80 ID:mlYOyxJ9.net]
>>809
既にある
行きたい人は向こうへ行け

Rust part6 ワッチョイ有り
https://mevius.5ch.net/test/read.cgi/tech/1532697692/

826 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:49:09.87 ID:GSNSCBV0.net]
論理構成が薄弱で常に自己正当化するためだけにレスを重ねる人は相手にしちゃダメなんだよ

特にほぼすべてのレスで相手を否定する言葉から始める人はある種の病気だと思って対処した方がいい
論理的な批判に耳を貸す相手じゃないから

827 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 11:55:22.58 ID:RyNZqEbO.net]
コテハンつけてくれるんなら
俺は今後一切複製クンを馬鹿にしないし
むしろ尊敬するから頼むからつけてほしい

828 名前:デフォルトの名無しさん mailto:sage [2022/06/21(火) 12:14:34.84 ID:l/hCBOZ3.net]
>>980
ワッチョイついでで思い出したけどvs C++へのリンクは落ちてるから消しといてくれ



829 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 07:37:30.53 ID:EdrHrSzx.net]
>>719
これ和製英語もそうだが和製発音も相当やばいよ
今ホットなウクライナがバリバリの和製発音でUkraineって本来ユークレインて発音するからな
英語できないでボランティア行ったやつウクライナ!ウクライナ!って全く通じない発音を連呼してたかと思うとはこっちが恥ずかしくてまさにもう見てらんない!
いい加減に読みも発音もグローバルスタンダードにしろっつーの何でもかんでもガラパゴスなの頭悪すぎる

830 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 07:45:18.19 ID:qSL2YnBO.net]
だからなに

831 名前:デフォルトの名無しさん [2022/06/22(水) 08:24:23.86 ID:s09CCxIL.net]
>>815
ウィーンをヴィエナって言えってか?

832 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 08:24:47.41 ID:48p4Di1y.net]
頭悪くても使えりゃいい

833 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 10:01:54.69 ID:U3SsHgc3.net]
>>815
強いて言えばウクライーナってくらいで和製発音じゃないから通じるよ
日本は英米と違って中華系の地名・名前以外は現地発音に寄せてるものが多い
中華系は日本語漢字読みだと外国人には全く通じない(中国人・台湾人なら漢字で書けば通じる)

Rustも最初はルーストって発音してる人いたよね
Scalaをスケイラとかも

834 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 10:12:00.42 ID:kKprzj+b.net]
いや通じないんだなこれがアジアの英語圏ですら通じないんですよ嘘吐いちゃダメよ
公用語が英語のフィリピンのマックやスタバで日本人のゴミ英語が一切通じない現実から目を背けるな
特にプログラミングの世界でどれだけ日本語の意訳が学習の障害になってきた・なっているか
超基本の代入を例に挙げてもわかるせめてアサイン or アサインメントってカタカナにすれば超理解し易いのに代入?ってなるよ代入って意訳した奴は大馬鹿だよ

835 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 10:23:30.15 ID:li50soYi.net]
エビデンスを出せ

836 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 10:41:03.57 ID:k8vtEW7h.net]
英語カーンプレクスをこじらせちゃってるね

837 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 10:50:41.07 ID:LE1FQ2Yx.net]
ラストは日本語識別子も使えるから色々大丈夫

838 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 10:54:46.62 ID:QEBJj1WM.net]
フィリピン人のオンライン英会話レッスンで
ウクライナが通じなくて恥ずかしかったんだなきっと
気持ちはわからなくはないが恥ずかしがることではないよ



839 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 11:04:11.24 ID:SASaungr.net]
触れちゃいけない人だろ
面倒だからそのくらいにしとけ

840 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 11:54:59.01 ID:TXCOqcCS.net]
論破されると変人扱いでシカトとかまんま陰キャチー牛オタクで草
プロジェクトが炎上する理由てこういうプログラマーの癖に論理じゃなくて感情で他人の足引っ張るの大好きな馬鹿が原因なんだよな

841 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 12:16:04.88 ID:vkSjQpLZ.net]
早口ですね

842 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 12:53:20.15 ID:KbrpK4gE.net]
ID変わっちゃうのは仕方がないことだからコテハンつけてくれ

843 名前:デフォルトの名無しさん [2022/06/22(水) 12:55:32.81 ID:PETcyPz4.net]
俺の場合、英語だと何倍も読むのに時間がかかったり、わからない単語や言い回しがあったりするので和訳はありがたいんだけど・・・・
ただ専門用語については、英語でなんて言うのかを併記して欲しいな
後に調べるのが大変になってしまう

上で騒いでる発音に関しては、まあ学習の上ではあんまり問題ないね

844 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 14:09:24 ID:jR4emiFb.net]
発音か…
もう長いこと勉強したことないな

発音勉強するいいサイトないの?(スレチ)

845 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 14:40:24.01 ID:NTc30+P3.net]
そこにyoutubeがあるだろ

846 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 15:11:02.84 ID:iqmSmX2L.net]
ヨーロッパの地名も日本語は英語よりまともなことが多い。現地語をカナカナに当てはめちゃってるので発音は違うけど。
パリ、パリス
ローマ、ローム
フィレンツェ、フローレンス

847 名前:デフォルトの名無しさん [2022/06/22(水) 15:24:30.47 ID:UvvJO3VG.net]
おまいらどれを読み間違っていたか正直に言いなさい
height
width
adjust
false
queue
deque
lambda
column
char

848 名前:デフォルトの名無しさん [2022/06/22(水) 15:32:22.45 ID:hyphYc1n.net]
>>815
そこは英語できないじゃなくて、English出来ないだろ!



849 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 15:37:13.88 ID:KbrpK4gE.net]
ここまで自分以外単発

850 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 15:42:45.07 ID:2oX7OuW7.net]
欧米のひとなんて日本をジャパンとかいう謎の呼び方するじゃん

851 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 16:00:46.63 ID:pGATTXre.net]
最近の言語って、代入は使う事少なく無い?
束縛って表現は、見かけるけれど。

852 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 16:01:41.99 ID:/Mr2VB7b.net]
>>830
Siriとかに発音させるアプリいいよ
単語レベルならかなり正確
あとは技術系の動画
最初に舌の動きやlinkingを学んだほうが効率いい

853 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 16:23:49.52 ID:b/qu9BCC.net]
>>833
ヘイト
ウィズス
アジャスト
フォルス
キュー
デキュー
ラムダ
ちゃー
https://www.s40otoko.com/wp-content/uploads/2020/09/char_a-sha.jpeg

854 名前:デフォルトの名無しさん [2022/06/22(水) 17:07:06.02 ID:UvvJO3VG.net]
基本点5点
一人目の勇気+1点
正直者+1点
ちゃーさん+2点

9点です

855 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 17:27:44.73 ID:JoQ1XY7q.net]
ランブダ 
コルムン
ちゃーはタムケンの方で

856 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 17:36:28.86 ID:XpS14TAH.net]
>>833
width, deque, char

widthは発音記号(/wɪdθ/)を見て長いことウィドスっぽく発音してた
clothes /kloʊðz/とかも一緒

charとかは純粋な英語ではないからSQLと一緒で英語圏で広く使われてる発音と違ってても全然気にしない
Rustで言えばmut、impl、dyn

857 名前:デフォルトの名無しさん [2022/06/22(水) 18:25:11.65 ID:s09CCxIL.net]
>>833
昔の会社の上司が lambda をランバダって読んでた。
冗談なのかマジなのか未だにわからない。

858 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 18:40:33.26 ID:jR4emiFb.net]
>>843
社内で言ってる場合はまだいい
客先で言ってないか心配

falseがいまだにフォールスと読めない



859 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 18:55:00.54 ID:dLMOYH7h.net]
英語なんて下層階級発音の言語をありがたがってもしょうがない。

860 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:03:21.02 ID:jR4emiFb.net]
英語はまだ覚えやすいんだよ
他は動詞活用や時制や男性名詞や女性名詞とか覚えることがえらく多い

861 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:06:57.00 ID:hL7m84GO.net]
charは英語でもチャー派とキャー派の両方いる
でも日本語ならキャラ一択だな
iterをイター、dirをダーと発音する人いないよね?

862 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:10:55.28 ID:2oX7OuW7.net]
プログラミング用語は口語じゃないからな・・・

863 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:20:27.11 ID:JoQ1XY7q.net]
>>845
日本語が上級って冗談だろ?

864 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:21:33.76 ID:jR4emiFb.net]
>>847
char aznableのシャア派はいないのか?

CHR$のころならキャラもありだけど

865 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:24:37.98 ID:jR4emiFb.net]
int イント イントゥ インテジャー

アイエヌティーと呼ぶ人もいるとか

866 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:25:49.84 ID:dLMOYH7h.net]
>>849
大母音推移で調べてみ。

867 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 19:31:40.43 ID:jR4emiFb.net]
台拇印推移って英語で中世に起こったやつだろ?

868 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 20:13:07.52 ID:Ocz5NWuM.net]
英語人の発音なんて知らんよ。
日本方言が標準語になるようにどんどん押し付けて行けよ。



869 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 20:35:42.72 ID:jR4emiFb.net]
中世に母音がずれてってスペルと発音がずれてしまった

870 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 20:43:18.98 ID:2oX7OuW7.net]
ナルトとかドラゴンボールみたいな日本作品を海外放送するときに日本語っぽい発音を使わせよう

871 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 23:24:21.45 ID:lxH9sQqR.net]
世界的に見ても英語は最も訛りが酷いのでそれほど気にする必要はない
アジアをエイジアと田舎訛りで発音するのも英語だけ

872 名前:デフォルトの名無しさん mailto:sage [2022/06/22(水) 23:38:42.55 ID:DzsA87OB.net]
>>836
European、American、Russianが本当の人間、〇〇〇eseは彼らの感覚では亜人種
「ese」を使って「軽くバカにする」のは「journalese」や「officialese」とう言葉です。

873 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 00:20:04.45 ID:VToiRT0b.net]
tauriがcargoだけでセットアップできれば即導入するんだけどなー

874 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 00:54:52.60 ID:ML6XVFuw.net]
html+jsベースのアプリのネイティブのバックボーンがtauriじゃないの?
cargoでセットアップできてもあまり意味がない気がするけど
yarnとかじゃないとj

875 名前:sやtsのパッケージ部分がつらそう []
[ここ壊れてます]

876 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 03:24:46.64 ID:sDo98BDo.net]
>>859
既に前スレで出ているように
Tauriはcargoだけで利用できます
npmやNode.jsなどのJavaScript環境は全く必要ないです
https://mevius.5ch.net/test/read.cgi/tech/1644596656/192

>>860
Webサイトを自分でJavsScript書かなくてもRustのみで構築できるように
Tauriでも同様にWasm利用のRustによるフレームワークを使ってRustのみで可能です
糊しろ部分のJavaScriptコードは自動生成されるため気にする必要がないです

877 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 03:51:12.40 ID:a115LlJm.net]
Yewが1.0.0になってMaterialUIのcrateできたらやるわ

878 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 04:10:46 ID:P5woiaAK.net]
Tauri以上に未完成なYewとか本当に触るだけだなこんなので何が出来るんだよw
ツールチェインの導入だけでこのスレの99%がギブアップするな間違いない



879 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 07:19:44.58 ID:fwy13iz2.net]
YewはReactと比べてライフサイクルや状態管理はどうなん?

880 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 07:32:21.26 ID:zvsRNXTt.net]
>>862
Rustでは大半がメジャーバージョン0なのを知らないのか
例えばcargoは最新が0.62.0
1.0.0にならないから使わないのか?

Yewのmaterial UIならば material-yew crate
デモ
https://yew-material.web.app/components

>>863
ツールチェーンの変更は不要
必要なのはtargetとなるアーキテクチャのインストール
rustup target add wasm32-unknown-unknown
この1行で済むから悩むところもない
その後のbuildでのtarget指定などはtrunkで全自動化されてるから指定不要
難しいところは何もない
Rustコードを書くだけ

881 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 07:36:49.21 ID:o4L2em1r.net]
>>865
https://yew-material.web.app/components
Bottom Bar Navigationが無いやり直し

882 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 08:37:01.16 ID:a115LlJm.net]
>>865
randとかの準標準系ライブラリはまた別かもしれないけど、semverの一般論として0.y.zは更新を追い続ける気のある暇人&人柱向けでしょうが
使ってほしかったらこんなところでレスバしてないでバグ出してパッチ書いて1.0.0リリースするの手伝いなさい

883 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 09:13:40.00 ID:YcISn7cj.net]
>>867
本気でそんなこと言ってるなら笑う
使っているクレートほとんどが0.y.zだぞ
Rustで1.0.0にこだわる人を初めて見た

884 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 09:56:29.17 ID:ZOhmOvih.net]
まぁ

885 名前:semverの一般論としては1.0.0より前は互換性の制約一切ないからそれは正しいんだが
Rustの場合0.y.zの互換性について独自拡張しているから1.0.0に上げなくても問題ないというのはある
[]
[ここ壊れてます]

886 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 10:23:14.18 ID:9VaR/Lj4.net]
YewやPerchやseedが流行るとは思えないけどねじゃあ何が流行るんだって話だけどwasm自体が流行らないと思うわ
だってどこまでいってもwasmの用途がブラウザ上で実行されるウェブアプリだからな
Electronはクロスプラットフォームなネイティブデスクトップの代替を狙って成功してそれを高速化・軽量化したTauriの方が受け入れられると思う
そもそもwasmのエコシステムが貧弱すぎてウェブで飯食ってるやつらがRust覚えるとは思えない

887 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 10:38:49.39 ID:uZ5q0lb+.net]
若いのにバージョン8.0とかになってるライブラリよりはバージョン0.8.100なライブラリを使いたい

888 名前:デフォルトの名無しさん [2022/06/23(木) 11:02:58.65 ID:t/xdYxij.net]
wasmのistioのように拡張機能を書くのに使われるんじゃないの
あとはluaの置き換えとか
ただウェブアプリなんてのはまったく理解してないアホの考えだな
俺はwebで使ってるけど



889 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 11:08:05.69 ID:YcISn7cj.net]
>>870
wasmを理解できていない
とっくにブラウザと切り離され発展していってる

>>871
同感
メジャー番号がデカい=破壊的バージョンアップを繰り返している だもんな

890 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 11:21:57 ID:LDpjmPqL.net]
まぁUnityとかLua置き換えとかそういうニッチで局所的に使われるだけだわな
それだと尚更ここでYewなんて布教してる奴はアホだって証明されちまったな

891 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 12:11:50.02 ID:/pvCP+jT.net]
wasmは事実上エッジコンピューティング専用だぞ

892 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 12:19:37.05 ID:1B2ALjfI.net]
ちみたちが全否定してボロクソ言われてるElectronが人気出てちみたちも使ってるであろうVSCodeもElectronなのだよ
そして今ちみらが全否定しているTauriはきっと人気がでるのだ

893 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 12:28:47.04 ID:XUWHXIGl.net]
>>876
C++、JavaScript、Pythonあたりのバインディングが実装されれば人気が出るかもね。

894 名前:はちみつ餃子 mailto:sage [2022/06/23(木) 12:31:55.63 ID:78TA9iC2.net]
>>875
そうでもない。
クラウド内でも実行中のプロセスを他のノードに移動させて負荷を平均化するなどの用途に使える。

895 名前:デフォルトの名無しさん [2022/06/23(木) 12:42:46.04 ID:OzGiFUhU.net]
ちょっと前までRustなんて流行らないと喚いてたアホが別のところにケチをつけはじめたな
流行ってるPHPでもやっとけ

896 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 12:52:55.59 ID:fdtlx8br.net]
ウェブでwasmを使っているケースは増える一方
加えてCDNエッジなど含めた高速で安全な共通サンドボックスとしてもwasm採用
wasmを軽視してる人は間違いなく時代に取り残された人

897 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 13:27:54.60 ID:xTWjwHox.net]
たしかにCloudflareとかFastlyがすでにやってるように、wasmが一番使われるのはアプリケーションのホスティング関連ではありそう

898 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 14:25:29.85 ID:aX6KFPJR.net]
オジ必死すぎやろww
wasmの前に汚文章を見直そうぜ



899 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 17:13:21.06 ID:fwy13iz2.net]
wasmは、アーキテクチャ共通の中間コードを生成する点、主要webブラウザ上では既に完璧に動作する点、当然ながらマルチスレッドに対応している点が良い
開発者側は自社スマホゲームをPWA化してアプリストア手数料を取られずに内課金を実装できる、バイナリだから難読化済み、アプリ動作も高速と、いいこと尽くめ

900 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 17:38:33.22 ID:fwy13iz2.net]
wasmについての記事はこれがわかりやすい
https://qiita.com/t_katsumura/items/ff379aaaba6931aad1c4

901 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 17:48:19.80 ID:mKYvHwUN.net]
アプリをPWAにして独自決済にすれば手数料を取られない!ギャグだろwww
え?ここってホビープログラマーがオナニー見せつけて気持ち良くなるレベルのスレだったっけ?www
WASMガイジが暴れて出して何かと思ったらお花畑でクッソワロタ

902 名前:デフォルトの名無しさん [2022/06/23(木) 17:49:46.75 ID:OrheE29P.net]
無知がバレたから話をそらして挽回しようとするアホの図

903 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 17:59:44.02 ID:fwy13iz2.net]
気を悪くさせたのなら申し訳ない

904 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 18:01:07.00 ID:fwy13iz2.net]
個人的には審査の通らないスマホエロゲとか発展しそうでいいかと思ったんだけど

905 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 18:22:09.53 ID:D2eUSbXw.net]
散々wasmを誉めそやして語って布教した結論がスマホエロゲ
5chで他言語を見下してドヤ顔してるRustスレの奴等なんて所詮こういう陰キャチー牛エロゲオタで草

906 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 18:24:46.62 ID:2tFofWlQ.net]
このスレでRustスゲーするのは理解できる

wasmスゲーは違うかと

907 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 18:35:17.77 ID:fwy13iz2.net]
じゃあみんなこっちにもきてよ
【wasm】ブラウザでC++。Emscriptenを語ろう
https://mevius.5ch.net/test/read.cgi/tech/1547549448/

908 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 18:43:49.69 ID:/gLCWYHm.net]
エロは儲かる



909 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 20:11:26.77 ID:fdtlx8br.net]
wasmを使うならRustだからだろう
GC言語では本末転倒
C++よりRustという当たり前の結果

> https://www.atmarkit.co.jp/ait/articles/2107/08/news112.html
> 「WebAssemblyアプリケーションの作成に使用している言語は何か」と質問したところ、Rustが最も多くの回答を集めた。
> 「WebAssemblyアプリケーションの作成に今後最も使用したい言語は何か」という質問でも、Rustを挙げた回答が最も多かった。

910 名前:はちみつ餃子 mailto:sage [2022/06/23(木) 20:17:33.07 ID:78TA9iC2.net]
Wasm の側に GC を入れる提案も出てはいるので将来的にはどうなるかわからんぞ。

911 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 21:05:12.10 ID:0lumrgPj.net]
>>873
1.0未満のバージョンって仕様自体fixしてなくて予告なく破壊的変更入る可能性があるのが普通だと思ってた。

912 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 23:25:11.97 ID:isDmg9ti.net]
窓の杜: C++言語によるお嬢様コーディングがブームの兆し!?.
https://forest.watch.impress.co.jp/docs/serial/yajiuma/1419370.html

メモリをしっかりお片付けなさりたいのならRustを使いませんこと?

913 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 23:27:10.78 ID:yevGv1hT.net]
お嬢様コーディングなんて流行ってねえよ
お嬢様言葉自体流行ってないのに

914 名前:デフォルトの名無しさん [2022/06/23(木) 23:28:00.25 ID:N/ehCqi3.net]
>>895
普通はそうだ。でももちろん例外だってある。
その辺は開発者組織の感性しだいだな。
何年もずぅ~っとβ版のプログラムだってあるだろ。

915 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 23:56:18.80 ID:CfsYAKzO.net]
>>895
自分たちが使っているcrateのtreeを見れば分かる
大半がバージョン0
それで誰も困っていない

916 名前:デフォルトの名無しさん mailto:sage [2022/06/23(木) 23:59:26.92 ID:CfsYAKzO.net]
>>894
GC導入は各言語であまりにも異なるため失敗した
各言語が様々な形でしている効率的な方法は取れない
WebAssemblyはRust一強が続くだろう

917 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 00:03:12.87 ID:Z/7Mth9k.net]
>>896
Rustはなんだかゾクゾク

918 名前:しますぞ!!これは服なぞ着てる場合ではありませんぞ!! []
[ここ壊れてます]



919 名前:デフォルトの名無しさん [2022/06/24(金) 04:06:11.87 ID:aL7/n23O.net]
赤いの黙ってて

920 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 06:23:10.42 ID:EMaN3eAt.net]
>>897
ネタに全力でレスすんなよw

921 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 09:12:28.24 ID:rZmITKBS.net]
まあクソネタにはクソって言っとかないと本当にウケてると思っちゃうやついるからね

922 名前:デフォルトの名無しさん [2022/06/24(金) 09:18:36.99 ID:8+vtapEb.net]
だっさ

923 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 09:46:26.14 ID:ZKGFoh0M.net]
そうそう、クソネタにはそうやってダサいと言っておかないと

924 名前:デフォルトの名無しさん [2022/06/24(金) 09:50:10.56 ID:K2we1Lar.net]
>904
+1

925 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 10:05:30.32 ID:0NSCQb1H.net]
スルースキルが皆無なのですわ
荒らし様にお引き取りいただけない訳も推して知るべしですわね

926 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 10:21:55.48 ID:ZKGFoh0M.net]
>スルースキルが皆無

誰も自己紹介なんて頼んでないのに…

927 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 17:42:51.52 ID:EMaN3eAt.net]
ネタにレスして顔真っ赤w

928 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 21:06:17.36 ID:3e9x6I/t.net]
wasmって流行ってるけどコード量膨大に増えすぎないか?



929 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 21:14:59.98 ID:FArw1u5A.net]
フロントエンドの奴らが rust を使ってるの見てらんない。
TS で無難に書いておけばいいよ。

930 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 21:41:14.48 ID:eHTn7QRG.net]
>>911
流行ってません

931 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 21:41:45.02 ID:eHTn7QRG.net]
脳内をハッキングでもされてるのか?

932 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 21:48:58.86 ID:+JdvQwfN.net]
>>911
javaの中間コードよりマシ

933 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 22:46:43.70 ID:/25pqsku.net]
ところでものすごい今さらなんだが wasm は何て読むんだ?
ワスムか

934 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 23:21:33.67 ID:KLiHHhJ8.net]
ネイティブはだいたいワズムとかウォズムみたいに発音しているような気がする

935 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 23:23:01.01 ID:g65423tt.net]
この動画では冒頭でwasmをワスムって言ってる
https://youtu.be/nW71Mlbmxt8

936 名前:デフォルトの名無しさん mailto:sage [2022/06/24(金) 23:28:47.07 ID:wBI1zPp0.net]
>>918
これはワズムっていってないか?リスニングはからっきしのゴミ耳だからよくわからんけど

937 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 01:14:39.07 ID:JyoKDUES.net]
ワズムて連呼しとるね
isの過去形のwasにm

938 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 02:13:22.50 ID:APixfc76.net]
>>911
コード量ってなんのこと?



939 名前:デフォルトの名無しさん [2022/06/25(土) 09:56:07.84 ID:pPSG+F7f.net]
ダブルアセムって脳内で読んでたわ

940 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 10:14:25.56 ID:APasFGX+.net]
asm.js(アズム ジェイエス)が進化してwasm(ワズム)に

941 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 10:21:42.97 ID:hQoUoumV.net]
英語できねーおっさんが蘊蓄垂れてクソワロタwww
お前らマジでプライドだけは一流の無能おじで草

942 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 10:50:44.23 ID:f+PJ3XzM.net]
ウェブアセンブラっていみジャネーの?

943 名前:はちみつ餃子 mailto:sage [2022/06/25(土) 13:18:50.95 ID:jO6HH2tH.net]
>>925
もちろん Wasm は WebAssembly の省略形だよ。
公式にもそう書いてある。

944 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 13:29:07.82 ID:/zwkJ/mi.net]
それはみんな知っての上でレスしてるのに
>>925みたいな周回遅れのレスを堂々と付けれるやつって
脳みその構造どうなっとんやろな

945 名前:デフォルトの名無しさん [2022/06/25(土) 13:52:40.86 ID:23CjKpU2.net]
wasmは俺が育てた!(AAry

946 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 14:34:43.26 ID:tSCqWCmZ.net]
きみたちもうちょっと真面目にやりなさい

947 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:17:36.49 ID:VflkbZsO.net]
>>926
じゃあ、ウェブのアセンブラって意味で良いんじゃないの?

948 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:25:02.65 ID:bv95EvGA.net]
WebAssemblyは仮想命令セットアーキテクチャあるいはプログラミング言語の一種である。略称はWasm。C・Rustなど様々なプログラミング言語のコンパイルターゲットとしてWasmバイナリは生成され、ウェブブラウザを含む様々な環境内のスタックベース仮想マシンにより実行される。
ネイティブコード相当の高速性・隔離環境でのメモリ安全な実行による安全性・仮想マシンによるハードウェア/プラットフォーム可搬性・ソースプログラミング言語中立性などを特徴とする[4]。この命令セットはバイナリ形式で定義されており、またアセンブリ言語ライクなテキスト形式も定義されている(その意味で低水準プログラミング言語といえる)。

Wasm自体は命令セットアーキテクチャであり、Linuxカーネルが提供するようなシステムコール(例: ファイルI/O)、Webブラウザが提供するようなDOMアクセスなどを提供していない。上記の安全性や可搬性はこの特徴に由来している。それと同時に、WasmエコシステムとしてはシステムコールやDOMアクセスがAPIとして個別に定義されており、Wasmランタイムが実装することでそれらの機能を提供している(例: システムコールを提供するWASI)。シンプルでオープンなISAとランタイムごとのAPIを組み合わせることでWasmエコシステムは高い拡張性を有している。例えばWasmをHTTPプロキシでのフィルタスクリプトとして利用するプロジェクトが存在する。
https://ja.m.wikipedia.org/wiki/WebAssemblyより



949 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:32:39.09 ID:tfc1tmd2.net]
>>930
>>931 にあるように、ウェブのアセンブラという解釈は間違ってる。
ウェブアセンブリっていう名前なだけ。
わかった?

950 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:35:16.83 ID:KZ/E7BkI.net]
現実問題としてWasmはRustで書くのがベストソリューション

951 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:35:55.67 ID:VflkbZsO.net]
三行以上書かれても
わかるわけない
常識

952 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:36:39.28 ID:UfyFqt6J.net]
仮想マシン上で動くという点でWASMはJavaと一緒だな

953 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:39:32.24 ID:Ho0z1jTS.net]
>>930
そもそもアセンブラとかいってる時点でなにもわかってないから相手にするだけ無駄、無視推奨

954 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:45:57.58 ID:VflkbZsO.net]
Rustで書くとバイナリ肥大化するから、WATが基本になりそうでは?

955 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 15:53:47.79 ID:l76RX7xy.net]
>>935
javaの問題をある程度解決したのがwasmっていう認識でおけ?

956 名前:デフォルトの名無しさん [2022/06/25(土) 16:03:23.70 ID:9jpr7vFN.net]
それな。Javaっぽくwebvmとかwebバイナリとかいった名前の方が分かりやすかったんじゃなかろうか

957 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:05:36.45 ID:VflkbZsO.net]
貴様に正義があるというのなら、三行以内で示せ。

958 名前:はちみつ餃子 mailto:sage [2022/06/25(土) 16:05:54.41 ID:jO6HH2tH.net]
>>930
仮にウェブのアセンブラだとして、ウェブのアセンブラってなんやねん……



959 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:07:10.43 ID:ILDlrGK/.net]
WebAssemblyはJVMやeBPFのリバイバルではない WasmがWeb以外でもアツい理由 - ログミーTech
https://logmi.jp/tech/articles/324956

スライド画像
https://img.logmi.jp/article_images/Jq1SrATqsEYupEF4aeAh6j.png
https://img.logmi.jp/article_images/HxUso3S1L63MXwia5RxGXd.png
https://img.logmi.jp/article_images/CntVo54bYF2MXnib2EXGei.png
https://img.logmi.jp/article_images/VLPRht2v3NnzzWyWP1pvrs.png
https://img.logmi.jp/article_images/SsS6T6EZrrPaWCSi5xq2bJ.png
https://img.logmi.jp/article_images/2Miy64H2xW7RnWCRGGJDAQ.png
https://img.logmi.jp/article_images/F2UYcDuwsrybfB6F4npBDL.png
https://img.logmi.jp/article_images/GC6f4J9DHeoEaTQGXaKacJ.png

960 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:08:16.68 ID:VflkbZsO.net]
>>941
俺の予想では、それが質問内容だと思います。

961 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:08:25.01 ID:ILDlrGK/.net]
>>938
これ>>942

962 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:15:09.41 ID:akwg01K7.net]
複オジばりの汚文章でワロタ
中身がなさすぎ

963 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:15:26.89 ID:KYOYlq4y.net]
>>943
wasmの読み方じゃなかったっけ?

964 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:19:32.95 ID:VflkbZsO.net]
読み方は、ワッセンブラで決まりでしょう。

965 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:20:56.33 ID:XFOsSqRc.net]
DOM・シャドーDOM操作が遅いからwasmはあまり流行らない、これを何とかしない限り、シコシコts書いてるオジサンが量産される

966 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:25:58.06 ID:a5vhFArq.net]
>>947
>>917-920あたりが答えです

967 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:29:05.96 ID:VflkbZsO.net]
俺は白人の読み方なんか認めんよ。
中国ならまだしも。

968 名前:はちみつ餃子 mailto:sage [2022/06/25(土) 16:33:30.99 ID:jO6HH2tH.net]
命名の伝統としてちょっとしたネガティブワードを使うことがあるんだよ。
いわゆるギークセンスというやつだが、日本語でいう中二病に近い。
GIMP の名前を変えるためにフォークするだのなんだのでもめたことがあるの知らんか?

Wasm もそれと同じようなノリなんじゃねーの?
https://eow.alc.co.jp/search?q=wasm



969 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:35:39.94 ID:VflkbZsO.net]
>>951
じゃあ、ワッセンブラでいいじゃん。

970 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:39:47.09 ID:ljJSN7j6.net]
>>952
きみはそう呼んでればいいと思うよ
きみにそう呼ぶ機会はないと思うけどw

971 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:43:21.45 ID:VflkbZsO.net]
菅総理が、我が国はワッセンブラに注力すると宣言したら、どうするんだよ?

972 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:47:50.00 ID:Xmq8wuxM.net]
なるほど、、?(わからん)
WebAssembly Reference Typesで、WasmでDOMを操作する壁がここまで下がった
https://zenn.dev/igrep/articles/2021-11-wasm-reference-types

973 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 16:50:02 ID:R8NAfVhJ.net]
DOMってなんだ?(←自分で調べろ)

974 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:02:05 ID:WInGVki9.net]
>>956
DOMとは?わかりやすく解説する! | イバログ
https://gyroibaraki.com/dom/

975 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:04:38 ID:Ch122rDL.net]
DOM操作なんか、どうやっても遅いんだからワズムからいじる必要ないだろ

976 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:08:43 ID:/UVjDglo.net]
DOM操作は流石にJS系でやればよくね?

977 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:19:33 ID:XFOsSqRc.net]
そんなことはない、JSやTSのようなダメ言語を排して、全部ほかのコンパイル型言語で統一して書けるように考えたのに
遅いなら話にならない。うんこ

978 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:32:09.99 ID:KYOYlq4y.net]
wasmはjsを置き換えるものではないっていう方針がよくわからんな。置き換えていいのに。



979 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:33:38.66 ID:Ch122rDL.net]
タイプスクリプトでドム操作書いてみたら分かると思うけど、キャストだらけになる

980 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:38:33.58 ID:Sl1k0I/l.net]
WebAssemblyはJavaScriptを置き換えようとしていますか?
いいえ!WebAssemblyは、JavaScriptを補完するものであり、JavaScriptを置き換えるものではないように設計されています。WebAssemblyは、時間の経過とともに多くの言語をWebにコンパイルできるようになりますが、JavaScriptには信じられないほどの勢いがあり、Webの単一の特権( 上記のとおり)動的言語のままです。さらに、JavaScriptとWebAssemblyは、さまざまな構成で一緒に使用されることが期待されています。

・JavaScriptを活用して物事をつなぎ合わせるコンパイル済みのC++アプリ全体。
・WebAssemblyで制御されるメインのセンターキャンバスの周りのHTML/CSS / JavaScript UIにより、開発者はWebフレームワークの力を活用して、アクセス可能なWebネイティブな感覚のエクスペリエンスを構築できます。
・ほとんどの場合、いくつかの高性能WebAssemblyモジュールを備えたHTML / CSS / JavaScriptアプリ(たとえば、グラフ化、シミュレーション、画像/音声/ビデオ処理、視覚化、アニメーション、圧縮など、今日asm.jsですでに見られる例)開発者が今日のJavaScriptライブラリと同じように人気のあるWebAssemblyライブラリを再利用できるようにします。
・WebAssembly がガベージコレクションされたオブジェクトにアクセスできる:ユニコーン:ようになると、それらのオブジェクトはJavaScriptと共有され、独自の壁に囲まれた世界には存在しなくなります。
https://webassembly.org/docs/faq/#is-webassembly-trying-to-replace-javascript より

981 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:57:29.10 ID:qzsUrSUG.net]
なるほどね

982 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 17:59:58.79 ID:9jpr7vFN.net]
ははーん、ユニコーンね

983 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 18:04:46.90 ID:ndOOnBgl.net]
https://github.githubassets.com/images/icons/emoji/unicode/1f984.png

984 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 18:08:27.82 ID:57CBQU6k.net]
🦄

985 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 19:58:37.73 ID:VflkbZsO.net]
いいわー
ワッセンブラいいわー。

986 名前:デフォルトの名無しさん [2022/06/25(土) 20:26:19 ID:bZig/WUT.net]
スレチおるど

987 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 22:42:14.67 ID:hVwOcYNS.net]
DOMてアレやろ、

988 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 22:55:47 ID:Bztv57SD.net]
ドムとかユニコーンとかガンダムかよ



989 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 23:21:23 ID:/UVjDglo.net]
tenplate要素使ってDOMツリー作ってそこに値や要素追加して表示しろって言われた時は訳わかんなかった

990 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 23:22:45.89 ID:Ch122rDL.net]
>>972
スペル間違うぐらいなら無理せずカタカナで書けよ

991 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 23:35:08.74 ID:3qOpf/5R.net]
フロントに全く興味ない奴らが無理してrust使おうとしてるってのがもうクソだわ

992 名前:デフォルトの名無しさん mailto:sage [2022/06/25(土) 23:57:43.41 ID:sDy4bz93.net]
Stringの中身が変化してほしい時のtrim()はどうすればよいですか?

993 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 00:30:53.23 ID:J3iRsr8e.net]
自分では何も思い付かないんですか?

994 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 00:41:24.45 ID:DP2sbpoK.net]
>>942
なぜ無駄に高解像度なのか

995 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 01:12:05.67 ID:82o8ItO8.net]
s.retain(|c| !c.is_whitespace());

996 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 01:14:23.73 ID:82o8ItO8.net]
中間のスペースも削除されるのか

997 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 04:54:09.98 ID:mBbZ0Pti.net]
>>979
そりゃそうだろw
後側の削除だけならtruncateすればいいんじゃね?

let mut s = String::from("てすと ");
let end = s.rfind(|c: char| !c.is_whitespace()).unwrap();
s.truncate(end + 1);

thread 'main' panicked at 'assertion failed: self.is_char_boundary(new_len)'
ダメだった…

998 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 05:14:19.98 ID:vh+TaUjL.net]
s.truncate(s.trim_end().len())



999 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 11:52:06.13 ID:KbueaMTO.net]
panic する理由を理解したほうがいいよ

1000 名前:デフォルトの名無しさん [2022/06/26(日) 17:08:41.82 ID:afHQr9JE.net]
Linus「メモリ確保でpanicするって?認めんわ断じて認めん、ワシの目の黒い内は許さんぞ」

1001 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 17:27:36.02 ID:nfXqcTpP.net]
宇宙じゃ。宇宙のせいじゃ!

1002 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 17:36:15.17 ID:DrXudPeH.net]
Linuxの話題は、あわしろを召喚しちまうから、やめとけ

1003 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 17:36:30.96 ID:TFpQVi1k.net]
>>983
青いからセーフ

1004 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 18:43:28.30 ID:82o8ItO8.net]
fn

1005 名前: trim_in_place(s: &mut String) {
if let Some(offset) = s.find(|c: char| !c.is_whitespace()) {
s.replace_range(..offset, "");
}
s.truncate(s.trim_end().len());
}

前後で非対称なのが気になるけど文字境界をうまく扱えるStringのメソッドが他に見つからなかった
[]
[ここ壊れてます]

1006 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 21:34:33.23 ID:xXnnisch.net]
> s.find(|c: char| !c.is_whitespace())

rustってこれうまいこと関数名だけ渡せないんだっけ?
しかも関数合成できれば
s.find(char::is_whitespace . not)
みたいに書けたり?

1007 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 22:00:29.06 ID:ZYHqIh+i.net]
5chでまともな回答期待する方が頭おかしいことになぜ気付かないんだ
redditでDeepL使って英語で海外ニキに質問した方が1億倍まともな回答くれるぞ

1008 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 23:10:04.56 ID:Y8S6yv8a.net]
>>988
関数を自分で定義しとけばわたせるけど
合成しながらだとマクロ使わないと無理なんじゃないかな



1009 名前:デフォルトの名無しさん mailto:sage [2022/06/26(日) 23:57:49.73 ID:VW+uLNTw.net]
>>461
メソッドを増やす時にOrphanルールで出来ないとしたら
それは標準ライブラリ含めて他人が書いたトレイトを他人が書いた型に適用する場合
スライスへfindメソッドを増やすことはそれに該当しないため出来る
適当なトレイト名SliceFindMethodを用意してスライス[T]にメソッドを実装すればよい

trait SliceFindMethod<T> {
 fn find(&self, pattern: impl SliceFindPattern<T>) -> Option<usize>;
}

impl<T: PartialEq> SliceFindMethod<T> for [T] {
 fn find(&self, pattern: impl SliceFindPattern<T>) -> Option<usize> {
  pattern.slice_find(self)
 }
}

文字列へのfindと同様に様々なパターンに対応できるよう
適当なトレイト名SliceFindPatternとそのメソッドslice_find()を用意し様々な実装をすればよい
長くなるので全体のコード
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=9110b8c76b17fb479bfef80e1f10182d

これでスライスの一種であるバイト列に対してもfindが適用できる
let buffer: &[u8] = b"ABCDEFGHIHJKL";
assert_eq!(Some(5), buffer.find(b'F'));
assert_eq!(Some(3), buffer.find(b"DEF"));

1010 名前:デフォルトの名無しさん mailto:sage [2022/06/27(月) 00:08:38.77 ID:xVflpq4r.net]
>>989
プログラミング情熱のある2-30代の集う板じゃなく
プログラミングはもう碌にしないおっさん・爺が多数の板だからな
質問してもおいおいな回答になるのは仕方ない

1011 名前:デフォルトの名無しさん mailto:sage [2022/06/27(月) 00:54:52.23 ID:7xcJ7izy.net]
>>989
翻訳の話題はあわしろを召喚しちまうからやめとけ。

1012 名前:デフォルトの名無しさん mailto:sage [2022/06/27(月) 02:47:29.39 ID:52L0v8L5.net]
null ぬる なる

1013 名前:デフォルトの名無しさん mailto:sage [2022/06/27(月) 04:40:51.89 ID:KgP+fmt3.net]
rust cliコマンドがなぜrustupなのか誰も疑問に思わんの?
俺はこのupがなんなのか気になって調べても分からなくてイライラする
rustup updateとかものすごく気に入らないしそもそもrustupとcargoがあるのもややこしい

1014 名前:デフォルトの名無しさん [2022/06/27(月) 08:27:05.49 ID:SVONOTxH.net]
慣用句の意味を調べるときは"で括るんやで

1015 名前:デフォルトの名無しさん mailto:sage [2022/06/27(月) 08:27:50.24 ID:gDlfKP6u.net]
>>995
今はrustcやrustfmtなど含めて全て実体は同じでハードリンク
cargoが各ワーキングディレクトリに対して適用されるのに対して
rustupは全体に適用されるため
同じ名前のサブコマンドでも全く異なる

1016 名前:デフォルトの名無しさん mailto:sage [2022/06/27(月) 08:28:40.38 ID:gDlfKP6u.net]
次スレ
Rust part16
https://mevius.5ch.net/test/read.cgi/tech/1656285423/

1017 名前:デフォルトの名無しさん [2022/06/27(月) 10:40:27.69 ID:B/Kpn5Aj.net]

Slot
💣🎴💣
🎰🎰🌸
🌸😜👻
(LA: 2.02, 1.95, 1.85)


1018 名前:デフォルトの名無しさん [2022/06/27(月) 10:40:32.55 ID:B/Kpn5Aj.net]

Status ♥5 ♣8 ♠7 HP: 1000 pts. たぶん(0)
2.02, 1.95, 1.85(904.632812) Proc. [0.187892 sec.]




1019 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 45日 16時間 12分 12秒

1020 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<296KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef