<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
	<title><![CDATA[ タグ「RUST」を含む投稿［12件］ - 電装工芸日記 - 舞台照明機器の製作とか - ]]></title>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi</link>
	<description><![CDATA[ 今年は開発案件を進めたい ]]></description>
	<language>ja</language>
	<copyright>Copyright 2026</copyright>
	<lastBuildDate>Wed, 03 Jun 2026 15:33:11 +0900</lastBuildDate>
	<generator><![CDATA[ <!-- てがろぐ Version: -->Powered by <a href="https://www.nishishi.com/cgi/tegalog/" target="_top">てがろぐ</a> Ver 3.4.0 ]]></generator>
	<!-- BEGIN ENTRIES -->
	<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Art-Net 関連品を作るべくプログラム言語 Rust … ]]></title>
	<description><![CDATA[ 　Art-Net 関連品を作るべくプログラム言語 Rust の勉強を進めております。<br />　関門とされる「所有権」や「ライフタイム」はアセンブラやＣ言語を書く際に普通にやっていたことを明示的に自動的にしてくれるモノであってそれ以上でも以下でもありませんでした。ただ、これらに対するアセンブラやＣ言語での書き方は人によって様々だと思いますので、Rust の流儀に慣れることは必要です。<br />　ベースはＣ言語だと思って間違いないと思います。私はＣ言語が進化したものだと思って取り組んでいますが、比較的ストレス無く習得を進められています。<br />　実際のところは Rust そのものより教科書の選び方が難しいと思います。所有権がぁ～、ライフタイムがぁ～と Rust 独特の機能は難しいぞと煽るのにとどのつまり何？ってことが書いていない教科書が多い。借用における制限・制約は書いてあっても解除されるタイミングについて書かれているものは皆無。自分は AI/Geminiさんに質問してようやく理解できました。本家の解説書である「The Book」の上澄みだけ書き写したのでしょうか。理解が進まないと教科書の良し悪しは評価出来ませんから痛し痒しです。<br />　私がわかりやすいと思える教科書を１冊見つけました。学習速度が爆上がりしています。ただ、私とっての「当たり前」が前提にあって読める内容だと思うのでご紹介は控えておきます。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> -- Posted by 電装工芸 〔604文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1270</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1270</guid>
	<category>tegalog</category>
	<pubDate>Fri, 29 May 2026 13:35:40 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Art-Net 関連機器の製作についてAI/Geminiさ… ]]></title>
	<description><![CDATA[ 　Art-Net 関連機器の製作についてAI/Geminiさんとやりとりをしました。相談出来る達人が近くに居ないので助かります。<br />　大きなヒントを一つもらいました。ブロッキングの活用です。<br />　キーボード入力においてもEtnerの受信においても入力や受信があるまで(または設定した一定時間)一時停止して待つ設定です。処理が一時停止しますが、イベントが発生した時に速やかに処理出来ます。他の処理はスレッドを分けておけば大丈夫です。スレッドとは処理を並列化させる(疑似的に複数の処理を同時進行させる)方法です。止まらせることなく延々と回したい処理とブロッキングしたい処理を別スレッドにすれば全体としては止まることがありません。PICマイコンでやってきた「ひたすら回してフラグで分岐する」って感覚がアタマに固着していたようで、スレッドを分けてブロッキングを活用する発想がありませんでした。ただ、無制限のブロッキングをしますと都合が悪いこともあるので0.1～0.5秒ごとにブロッキングを外して周囲を伺うのが良さそうです。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%41%72%74%2d%4e%65%74" class="taglink" title="Art-Net">#&#91;Art-Net&#93;</a>  -- Posted by 電装工芸 〔474文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1259</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1259</guid>
	<category>tegalog</category>
	<pubDate>Thu, 14 May 2026 07:24:09 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Art-Net 関連機器は RaspberryPi_CM4… ]]></title>
	<description><![CDATA[ 　Art-Net 関連機器は RaspberryPi_CM4 を母体に Rust でコードを書きます。Rust を使うのはこの件が初めてなので無謀な気もしますが、Ｃ言語で動いたモノを Rust で書き直す感じなので大丈夫っしょ。Ｃ言語で書いたモノもメモリ構成を大変更するために全部書き直すつもりだったので作業量は大差ありません。<br />　使ってみないとわかりませんが、Ｃ言語で出来ることは Rust でも出来るそうです。これを信じて取り組んでいきましょう。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%41%72%74%2d%4e%65%74" class="taglink" title="Art-Net">#&#91;Art-Net&#93;</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> -- Posted by 電装工芸 〔243文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1258</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1258</guid>
	<category>tegalog</category>
	<pubDate>Tue, 12 May 2026 11:50:44 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Rust のことは随分わかってきました。大雑把に括るとＣ言… ]]></title>
	<description><![CDATA[ 　Rust のことは随分わかってきました。大雑把に括るとＣ言語と同じです。Python や .NET 系のようにマネージが強くて自由度が狭いってことは無いっぽいです。<br />　「所有権」や「ライフタイム」は方言程度の違いでした。両方ともＣ言語ではコードを書く側が注意を払ってきたことを自動的にアシストしてくれる機能です。アルゴリズムの中に埋もれるバグを予防出来るので、難しいというより手間をかけるのが先か後かってだけでした。<br />　「所有権」は変数の読み書きの不整合や二重処理を防止するための対策です。その対策の意味を理解するには変数の処理構造を知っていた方がいいと思うのですが、その説明をすっ飛ばして「所有権がぁ～」と話をする教科書が多くて読んでいるこちらが混乱します。Ｃ言語におけるポインタが理解出来ていればそれほど難しいことではないので、ポインタがわかっている前提で説明をしてくれる教科書があってもいいんぢゃないのかなぁ～って思います。「所有権」によって制限されることはＣ言語のコードを書く上でも注意しなければならないことなので、だったら前提として管理・制限しときゃいいんぢゃね？ってことなのでしょう。Ｃ言語のポインタは自由度が高い反面コードを書く側が管理・制限してきましたが、これをコンパイラが厳密にチェックしてくれるのですからある意味楽です。<br />　「ライフタイム」は変数のコード上での有効範囲のことです。変数の有効時間の設定・管理ではありません。変数の有効範囲はＣ言語とほぼ同じですが、変数の有効無効をコード上でチェックで出来ます。関数で用いる変数が有効かをチェックしたり、この関数の処理が済むまで変数を維持するように指示をする機能が追加されたと思えばよさそうです。<br />　どちらも、ややこしさを追加して意地悪しているのではありません。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> -- Posted by 電装工芸 〔772文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1257</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1257</guid>
	<category>tegalog</category>
	<pubDate>Tue, 12 May 2026 10:32:53 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Ｃ言語での ncurses みたいに、Rust で画面にテ… ]]></title>
	<description><![CDATA[ 　Ｃ言語での ncurses みたいに、Rust で画面にテキスト表示するなら crossterm だそうです。キーボード操作も扱えます。<br />　あるのか無いのかの確認をしただけですが、あるなら問題ありません。<br />　Ｃ言語ベースで処理段取りの整理を随分やってきましたので、Rust の勉強が進めば Art-Net 関連を書き始められそうです。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%41%72%74%2d%4e%65%74" class="taglink" title="Art-Net">#&#91;Art-Net&#93;</a><br /> -- Posted by 電装工芸 〔187文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1254</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1254</guid>
	<category>tegalog</category>
	<pubDate>Sun, 10 May 2026 11:26:51 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　合間に Rust の勉強をしています。 ]]></title>
	<description><![CDATA[ 　合間に Rust の勉強をしています。<br />　今は「所有権」について整理していますが、変数は内容を保存するメモリ、そのアドレスとメタデータを保存するインデックスで構成されていると捉えれば自然に理解出来ます。ソースコード上での使い方は別問題ですが、「所有権」の譲渡と貸出はこの構成から見ればいいだけでした。挙動の表面だけで理解しようとすると何がどうなっているか、どうしてこんなことをするのか理解し難いようですけど。<br />　ただ、「所有権」という言葉には疑問があります。私の理解では「変数へのアクセス権限」となりました。この言葉のまんまですが、「所有権」は変数の内容にアクセスできるかどうかですから、持っているかより権限があるかが重要だと思うのです。この場合の「所有権」はこういう意味の言葉だと扱えばいいだけですが、「所有権」と言われると「所有者」は？と聞きたくなり、「所有物」は何？とも聞きたくなります。「所有権」の説明では「所有者」も「所有物」も変数だとする物が多く、当初は何のこっちゃいと感じたものです。「所有者」は変数であり、「所有物」は変数の内容が書かれたメモリとなります。あくまでイメージですけど、「変数の内容が格納されたメモリのパーミッション」だとも思えます。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> -- Posted by 電装工芸 〔539文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1253</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1253</guid>
	<category>tegalog</category>
	<pubDate>Sun, 10 May 2026 08:54:51 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Rust の教科書は「所有権」や「ライフタイム」で大騒ぎし… ]]></title>
	<description><![CDATA[ 　Rust の教科書は「所有権」や「ライフタイム」で大騒ぎしないモノがいいようです。大騒ぎする教科書はその厄介さを語って力尽きるのか「とどのつまり？」の説明が薄い傾向にあります。両方とも重要なことですが、これらが Rust の全てではありません。「cargo」と呼ばれるプロジェクト管理ツールを説明しない教科書は論外です。<br />　間違っても初めてのプログラム言語に Rust を選ぶのはお勧めできません。最終的に作りたいモノによりますが、html や Python あたりで成功体験を積み重ねて神エンジニアたちが目指したことを体に取り入れるのが良いと思います。Rust はＣ言語同様に理解するための前提というか基礎の裾野が広すぎるのです。<br />　私は回路設計とプログラミングの境界が曖昧な PIC16 で右往左往してきましたので脳ミソが少しおかしいのですが、Ｃ言語もそうですが、Rust を受け入れるにはこのコードでハードウェアが何をするかをイメージ出来るといいようです。両言語ともハードウェアを制御する傾向が強いからでしょうか。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%e5%99%a8%e5%85%b7%e3%81%ae%e8%a3%bd%e4%bd%9c" class="taglink" title="器具の製作">#器具の製作</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%ef%bc%a3%e8%a8%80%e8%aa%9e" class="taglink" title="Ｃ言語">#Ｃ言語</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> -- Posted by 電装工芸 〔480文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1246</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1246</guid>
	<category>tegalog</category>
	<pubDate>Thu, 07 May 2026 06:18:59 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Art-Net 関連品の開発では「Rust」を使うことにし… ]]></title>
	<description><![CDATA[ 　Art-Net 関連品の開発では「Rust」を使うことにしました。<br />　Rust が持つ標準機能が Art-Net 関連品を作るのに絶大に有益なことがわかったからです。コレクションと呼ばれる機能です。<br />　新たな言語を勉強するのは大変ですが、Ｃ言語の方言と思えばゼロベースではありません。Ｃ言語を学んだことで Rust がすんなり自分の中に入ってくる実感があります。Rust を学ぶためにＣ言語を勉強するベキ！？ってことでもありますが、案外そんなもんかなと感じています。Ｃ言語でも Rust でもコードの裏側にあることは同じってことですかね。ハードウェアを動かすのがソフトウェアですから。<br />　あまりに便利なので Python みたいに遅くねーの？って疑問はありますが、コンパイルされたバイナリはＣ言語やＣ＋＋に匹敵するらしいのでその評価を信じましょう。<br />　言葉は優しいですが、AI/Geminiさんのお言葉を要約するなら基板を作ってPIC16アセンブラを書いて RaspberryPi と協調動作する装置を作る素人(アマチュア)は斜め上過ぎる存在らしいです。私にとっては日常感覚ですケド、その延長かプログラム言語に対するアプローチも少し変みたいです。私からしたらパチンコやスロットで確率数値を操って常に勝ち続けてる人の方がどうかしてますケド。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%e5%99%a8%e5%85%b7%e3%81%ae%e8%a3%bd%e4%bd%9c" class="taglink" title="器具の製作">#器具の製作</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%ef%bc%a3%e8%a8%80%e8%aa%9e" class="taglink" title="Ｃ言語">#Ｃ言語</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> -- Posted by 電装工芸 〔589文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1245</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1245</guid>
	<category>tegalog</category>
	<pubDate>Tue, 05 May 2026 18:53:06 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　DMX-Timer は終わりが見えてきました。次の課題はA… ]]></title>
	<description><![CDATA[ 　DMX-Timer は終わりが見えてきました。次の課題はArt-Net 関連機器と行きたいところです。<br />　これらは RaspberryPi 上でのプログラミングが主となりますが言語どうするか。Ｃ言語か Rust の二択ですけど、未だに迷っております。この２種はハードウェアを扱うのに適した言語ですから Art-Net 関連機器を組むにはよいと思われます。両方を使いこなせればいいのですが、年齢的に一つでも辛いのに二つは無理。。。少し前までＣ言語でいくつもりで勉強していましたが、 Rust の教科書を斜め読みしたところ自分がやりたいことには Rust が向いているような気がして困っているワケです。<br />　Rust の情報に接しますと「所有権がぁ、所有権がぁ」と脅しの様に書かれております。これはＣ言語での「ポインタがぁ、ポインタがぁ」や、Ｃ＋＋での「オブジェクト指向がぁ、がぁ」と同じです。身に着けないと使えないし身に着ければよりよいコードが書けるのですから身に着ければいい。簡単でないことは確かですが、言語をデザインした神エンジニアたちは苦労や混乱をさせたかったワケではありません。たぶん。<br />　開発には心の余裕とまとまった時間が必要です。なかなかそんな時間は取れませんので、引き続き妄想しながら勉強をしましょう。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%ef%bc%a3%e8%a8%80%e8%aa%9e" class="taglink" title="Ｃ言語">#Ｃ言語</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%75%73%74" class="taglink" title="Rust">#Rust</a> -- Posted by 電装工芸 〔569文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1243</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1243</guid>
	<category>tegalog</category>
	<pubDate>Tue, 05 May 2026 15:34:40 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　ChatGPT に RUST で Art-Net を受信す… ]]></title>
	<description><![CDATA[ 　ChatGPT に RUST で Art-Net を受信するコードをリクエストしたら明快な答えが出た。<br />　Ｃ言語と似てんなって思いつつ、なるほどって感じ。<br />　コードの表現というより、潜在的なエラーをチェックしてくれる RUST のコンパイラの仕様がＣ言語コンパイラより進化してんだなってところ。<br />　RUST はＣ言語の方言の一つで今時言語と同じ様に文字列を扱えてＣ++より解りやすいってのが自分の勝手な感想です。ならＣ＃ぢゃダメなのかって話もありますケドね。<br />　メモリやプロセス管理に気配りをせにゃならんＣ言語か、所有権に気配りをせにゃならん RUST かって感じもしますが、RaspberryPi の様な組み込みマイコンで最速を最小限の手間で狙うならどれを使っても手間は同じって気分にもなります。<br />　<br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%55%53%54" class="taglink" title="RUST">#RUST</a> -- Posted by 電装工芸 〔358文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1094</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1094</guid>
	<category>tegalog</category>
	<pubDate>Tue, 15 Jul 2025 00:30:47 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　空き時間に少しずつ RUST の勉強をしています。 ]]></title>
	<description><![CDATA[ 　空き時間に少しずつ RUST の勉強をしています。<br />　変数の型について読んでいる段階ですが、Ｃ言語と Python の両方を知っていると比較的わかりやすく思えます。<br />　記述するコードもＣ言語よりも RUST の方が読みやすい印象があります。<br />　開発環境も神先達が整えてくださっています。VSCode 用いる環境整備はＣ言語のそれと大差無さそうです。Windows から RaspberryPi に SSH で入っての操作も可能です。<br />　ポインタがあり変数の型が厳密なのでお気楽簡単スクリプト言語ではありませんが、Ｃ言語の初歩から次の段階に突っ込んでいこうと思っていた矢先なので、RUST を本命に替えても勉強量は大差なさそうです。<br /><br />　今時ソースコードは AI に書かせればいいぢゃん！って話はごもっともなのですが、自分で書くことに意味がある趣味の領域ですからいいのです。もちろん、AI に質問はしますけどね。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%55%53%54" class="taglink" title="RUST">#RUST</a> -- Posted by 電装工芸 〔413文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1092</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1092</guid>
	<category>tegalog</category>
	<pubDate>Mon, 14 Jul 2025 13:18:16 +0900</pubDate>
</item>
<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　Ｃ言語はアセンブラをマクロ化した感覚で使えて可愛いなって思… ]]></title>
	<description><![CDATA[ 　Ｃ言語はアセンブラをマクロ化した感覚で使えて可愛いなって思う自分はいますが RUST を使ってもいいかも。<br />　RUST はＣ言語並みの高速動作が期待出来、Ｃ言語の延長線で考えられる雰囲気を感じつつ、Ｃ言語の弱さを補完した良さがあります。<br />　Art-Net や sACN を扱うことも出来る様子。ncurses に相当するテキスト文字画面を作るライブラリもあるようです。力技になりますがＣ言語のライブラリも使えるようです。<br />　Ｃ言語は歴史が深くこれを学ぶことは裾野が広いことに繋がるような気がしますが、RUST を学んでもいいかもしれません。Windows上のVSCodeでRaapberryPi上のRUSTを扱えるようです。<br />　自分にとって残された時間を鑑みるにRUST学んだ方がいいような気分になりつつあります。<br /><br />　ChatGPT で調べていますが、Google検索を代行して要約してもらえる感覚で使うと便利です。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%52%55%53%54" class="taglink" title="RUST">#RUST</a> -- Posted by 電装工芸 〔417文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1091</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=1091</guid>
	<category>tegalog</category>
	<pubDate>Sun, 13 Jul 2025 00:52:02 +0900</pubDate>
</item>

	<!-- END ENTRIES -->
</channel>
</rss>

