Rust
あとで書き直すかも。いったん「これでいけそう」という方針が決まってきたので、自分の中での整理も兼ねて書きます。
R には、バージョン 3.5(2018年リリース)で導入された ALTREP という仕組みがあります。ALTREP は alternative representation の略で、たぶん「通常とは異なるメモリ上の表現」みたいな意味です。要は「普通のベクトルのように扱えるけど中身は実は別物」…
RのC APIを使う時、当然ですが任意の操作は失敗する可能性があります。 このために、RのコードでいうtryCatch()にあたるものがいくつか提供されています。 https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Condition-handling-and-cleanup-co…
extendrの実装おかしくない?、というのを最近調べていて、理解が深まったのでメモっておきます。
前回、大変そう、みたいなことを書いたけど、実際大変だったので遭遇した問題をメモっておく。 たぶん1年後くらいに見るとだいたい解決されてそうな気はする。
ある関数を定期的に実行したいとき、公式のSDKだと add_repeating_timer_ms() add_repeating_timer_us() という関数が用意されていて、callback関数を渡すとそれを定期的に実行してくれるらしい。 実際のコードはこのへんとか、RP2040のデータシートの「4.6.…
すでに詳しくブログを書かれている方がいるので、書くほどでもないと思いつつメモ。
PIOでPWMを実現するのは、公式のexamplesにコードがある。 rp-halでもpio-rs経由でPIOが使えて、このコードをRustに書き直したバージョンが以下のコードらしい。 これを理解するのにちょっと手間取ったのでメモ。
rp-hal というのはこれ
少し前ですが、第103回R勉強会@東京で発表してきました。スライドはQuarto Pub(便利)で公開しています。
1年後どうなってるのかわからないけど、この気持ちを覚えているうちにメモっておきたいので書きます。 (注:私はRustを使うのが年間数日くらいのエアプ勢なので、たぶんいろいろ適当なことを書いていると思います。話半分で読んでいただければ...)
こういう関数があるとする。
そういえば日本語ブログにぜんぜん書いてないことに気付いたので、いちおう。 string2pathというRパッケージをCRANリリースしました。 特筆すべき点として、このパッケージはRustを使っています。 これはextendrというフレームワークによって実現されていま…
発表してきました。 https://tokyor92-slides-rust-and-r.vercel.app/ こっちでも見れます:
(完全に自分用メモ)
これを wgpu-rs でやってみたときのメモ。例によって GitHub の master 版なのでコードはたぶんすぐに動かなくなる。
以前にこんなのを書いたけど、 けっきょく、nannou の挙動がわからないので勉強がてら素の wgpu と lyon を使ってみるか〜となってしまったのでそのメモ(vulkan のドライバまわり?の謎のエラーの切り分けのために、詳しめのエラーを出してくれる開発版 wgp…
nannou は Rust 製のクリエイティブコーディングフレームワークです。lyon は 2D グラフィックスのための tessellationのライブラリ、wgpu-rs は WebGPU を使うためのライブラリです。この 2 つは nannou の中でも使われているもので、黙っていれば nannou …
nannou は cgmath というライブラリを使っていますが、 nalgebra の方が人気でドキュメントが多いのでそっちから入門するのが楽そうです。しかし、 nalgebra と cgmath は当然使ってる型が違うのでなんらかの変換が必要になります。どちらも内部的には array…
「Rust 行列計算」とかでググると、主に nalgebra と ndarray という Crate が引っかかる。どうやらこれが二大巨塔っぽい。 しかし、nannou が使っている Crate はこれではなく、 cgmath というやつらしい。
Rectを頂点から定義する 前回書いたように、Rectは中心の座標と高さ、幅で定義できます。とはいえ、頂点の座標でやる方法もなんかあるのかな?と思っていたら、 let r = Rect::from_corners(pt1, pt2); という感じで2つの頂点からつくることもできました。 …
タイトルに(1)とつけたものの次回があるかわからないけどとりあえずメモ。 (私はProcessingもnannoutも、軽くいじったことがある、くらいのレベルです。ここに書かれていることはあまりアテにしないでください)
うさぎさんに少しでも追いつきたくて、コードを読んでるけどぜんぜん分からないのでメモ。
追記:leaf、まだ志半ばなのか、動きそうな実装がない。とうさぎさんから教えてもらったので記事の後半書き換えました...。適当なこと書いてすみません。 @sinhrksさん(a.k.a.うさぎさん)がこんなつぶやきをしていました。 2名のスタートアップで選定言語…
こんな話がある。 qiita.com qiita.com で、これRからもできるのでは?と思ってやってみようとしたらいろいろハマってつらかった話をします。