[過去ログ] Rust part16 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
655: 2022/09/08(木)18:02 ID:U6/gufpm(2/2) AAS
OpenMP なのか Open MPI なのかどっち
656: 2022/09/08(木)20:45 ID:Vswe11EN(2/2) AAS
知りたいのはOpenMPIの方です
ググるとOpenMPIとOpenMPを勘違いしたと思われるRayonを紹介する記事が出てきたり、OpenMPがらみのサイトが出てきたり、なかなか状況が分かりません・・・・
657: 2022/09/08(木)20:53 ID:RwfCQI7B(1) AAS
一番上のrsmpiは違うの
658: 2022/09/08(木)21:56 ID:fa0yFdt8(1) AAS
MPIはHPC以外では使う必要ないです
機械学習でも有用だとは思いますが
そもそもフレームワークが対応していないから
全部自前で作ってるような人以外は必要ないです
659: 2022/09/09(金)01:14 ID:4b4Wyf25(1/4) AAS
Open MPIに限らずMPIはアプリから見たらただのライブラリだからRust側で特別な対応は不要で単にCの関数を呼び出せばよいだけでは
660: 2022/09/09(金)08:12 ID:auDHI5c1(1) AAS
良くありがちな奴だと思うけど
struct ARGB32 {A: u8, R: u8, G: u8, B: u8,}
みたいに書くとスネークケースじゃないと警告が出るけどどう書くのがRust流なの?
これ小文字にしちゃったら少なからず可読性が落ちるよね
661
(1): 2022/09/09(金)08:31 ID:WeF8ASv0(1) AAS
#[allow(non_snake_case)]
しかしフィールド名だけ小文字にすれば不要
struct ARGB32 {a: u8, r: u8, g: u8, b: u8,}
そして可読性が落ちると思わない
662: 2022/09/09(金)09:24 ID:4b4Wyf25(2/4) AAS
構造体名もCamelCaseでArgb32とすべきかな
663
(1): 2022/09/09(金)12:29 ID:6YdHvwwi(1) AAS
識別子を極端に省略するのは良くないという現代のプログラミングの流儀と業界の略語でコンフリクトしてるよね。
略語を使わずに書くとこうかね?

Color<T>{alpha: T, red: T, green: T, blue: T}

CMYはどうなるとか言い出すやつがいると面倒そうだけど。
664: 2022/09/09(金)12:42 ID:VsTRsG1f(1) AAS
enum Color {
Red,
Blue,
Green,
RGB(u32, u32, u32),
HSV(u32, u32, u32),
HSL(u32, u32, u32),
CMY(u32, u32, u32),
CMYK(u32, u32, u32, u32),
}
665: 2022/09/09(金)13:41 ID:4b4Wyf25(3/4) AAS
最低限ガイドには従った方が良いと思う
外部リンク[html]:rust-lang.github.io
acronymはひとつ単語として扱うとあるから Rgb とか Argb とすべき

あとは適当なグラフィック系ライブラリの実装を見て真似してみたら良いのでは
規約に従ってないライブラリも多いけど

そもそも既存crate使えば独自にArgb型定義する必要もなくなるかもしれない
666
(1): はちみつ餃子 ◆8X2XSCHEME 2022/09/09(金)14:02 ID:gp9Eay33(1) AAS
API ガイドラインってことは、 API として公開しない (内部的な) 名前は雑でいいってことだよね。
667: 2022/09/09(金)14:15 ID:+r9uXbjm(1) AAS
>>661
個人的にはこっちの方が好きだけど
規約的にダメなら仕方ない
668: 2022/09/09(金)14:42 ID:4b4Wyf25(4/4) AAS
>>666
非公開部分を将来公開APIにする可能性や、自分以外の誰かがソース読んでパッチ作ってくれる可能性考えると、
最初から内部も規約に従ったものにしておいた方が良いと思う
そもそもひとつのプロジェクトの中で公開部分と非公開部分で異なる規約混在するのも嫌では
669
(1): 2022/09/09(金)15:18 ID:QLGZdL8Z(1) AAS
mozillaは公開できない関数名を使ってオープンソース化が数年遅れた過去があったなぁ。
670: 2022/09/09(金)15:35 ID:7NqN1r1N(1) AAS
gameraとか?
671: 2022/09/09(金)16:00 ID:wraz5iEP(1) AAS
>>669
94年初リリースで98年ソース公開で
数年遅れるとは?
672: 2022/09/09(金)17:53 ID:rfSAUeXI(1) AAS
CreateFileW in windows::Win32::Storage::FileSystem - Rust
外部リンク[html]:microsoft.github.io
とかAPIガイドラインもクソもないけど名前だけRustに寄せたところでリファレンスドキュメント(MSDN)との差異が
拡大するだけでメリットはほとんど無いような
673
(1): 2022/09/09(金)21:16 ID:pyHRaXAz(1) AAS
JPEG、MPEG、PNG、HEVC・・・すでに略されている物をありがちな命名規則で書くと判りにくくなる
674: 2022/09/09(金)22:46 ID:B0h43lqZ(1) AAS
>>673
同意
675
(3): 2022/09/10(土)00:32 ID:qBfKxAEz(1/4) AAS
>>663
その方向でやってみます

というかこの構造体をArrayに沢山詰めようとすると初期化が難しいのか。どうしようか悩んだ結果こうしてみた
#![no_std]
const LEN: u32 = 640*480;
let mut bitmap:[u32; LEN] = [0; LEN];
let mut bitmap:[ARGB32; LEN] = unsafe {core::intrinsics::transmute::<_, [ARGB32; LEN]>(bitmap)};
bitmap[0].red = 0xFF;
アセンブラリストを見る限りは問題なさそう
676
(2): 2022/09/10(土)01:19 ID:BhJh8aSd(1/5) AAS
acronymを全部大文字にするか先頭だけ大文字にするかってそんなに大きな問題かな
一貫性のあるルールに従っていれば書き手や読み手として混乱することもないと思うんだが
677: 2022/09/10(土)03:00 ID:Rsh0NV07(1) AAS
Ipv4なんて一瞬なんのことか分からんかったな
結局慣れで、一貫性以上に価値のある好みなんてのはない
678: 2022/09/10(土)07:09 ID:2MfL7Eat(1/2) AAS
>>676
その一貫性が崩れるのがいやなんだろ。
ドキュメント・コメントでは全部大文字なのにコードでは先頭だけ大文字とか。
慣れの問題だが、今まで/一般的 に全部大文字で慣れてるものをこの時だけ先頭大文字に慣らせというのは抵抗感あって当たり前。
679: 2022/09/10(土)07:12 ID:2MfL7Eat(2/2) AAS
>>676
問題の大小なんて誰も言ってない。
今までの慣れ/一般的な表記 を置き換えるのは抵抗感あるって話。
680: 2022/09/10(土)12:37 ID:GXRB1/O5(1) AAS
命名規則を利用する目的は可読性や開発効率の向上などのはず
一般的な表記から外れるのであればそれなりの理由が必要であろう
「命名規則に従ったから」では「目的より手段を優先している、合理性がない」などと
突っ込まれてもしょうがない
681: 2022/09/10(土)13:03 ID:jQKLnU5m(1) AAS
JavaScriptのアイツは
XmlHttpRequestと命名されるべきだったのか?
XMLHTTPRequestと命名されるべきだったのか?
682: 2022/09/10(土)13:20 ID:AMhmGX9g(1) AAS
eXtend Markup Language Hyper Text Transfer Protocol Request
683: 2022/09/10(土)13:38 ID:D1Nb21qC(1) AAS
完全に好みの問題と思うから何らかのルールで統一されてればどっちでも良いと思うけど、
LCD TV、nVidia、iOS IoT Hubなんかをどう表記するかとか変数名ならどうしようとか考えるのめんどいから
表記の慣例とか無視して全部キャメルケースにしちゃうな
684: 2022/09/10(土)13:50 ID:TnGNUz3W(1) AAS
ルールから逸脱させるかどうか悩むならルールに合わせておくおじさんになった
1-
あと 318 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s