ラズパイ(Raspberry Pi 3B+)で音声ファイルを再生すると、最後に1.3秒ほどが再生されないという問題がある。 しかたなく、vtsay(VoiceText API を利用した読み上げプログラム)では sox で 1秒の無音WAVファイルを連結してから aplay に再生させるというワ…
企業のやりたいことが人を助けることはないということ。 Dr Joe Armstrong
Kumanの9点セットを買った。 圧着工具に加工が必要とのレビューがあるが、やはり圧着するとコネクタのツメがパキッっといく。 ツメが折れたコネクタを付け替えるために買ったのに、ツメの折れかかったコネクタのケーブルができるのは微妙である。 ツメの下に…
小学生 日本の小学生にも lxterminal pcmanfm guvcview v4l2ucp どうして?
勝手口の木戸が壊れている。 扉自体も板木どうしの間に隙間があったり、穴が空いたりしている。 木の柱をコンクリートの塀に固定している金具が腐食している。 金具には穴の空いた板のような部分があって、ここから木の柱を釘で固定していたが、釘が腐食して…
何も入っていく気がしない。
スペースバーのパーツ壊しちゃった。 スタビライザーは無理。 ルブルくらいしかない ALPS互換。
楽しい。 動画再生機能について書く。 その前に、ラズパイのCPUはどのくらいパワフルなの? ラズパイのCPUは 1.4GHz のARMで、メインPCは一瞬なら 3.6GHz まで上がる Core i5。gcc で最適化なしでコンパイルした空ループを実行させると3倍くらい違う。これ…
設定では日本語にしているのに。 と思ったらブラウザの言語設定で en を ja の上にしているからだった。
In Ruby all values are references to objects and variables store them. To see what this means, consider the local auto variable declaration in C below. int x; When the program's control goes into the scope of `x`, certain contiguous bytes …
2004年 はじめはこの2冊を並行して読んだ。Fromkin は社会言語学の章は心が乱れるので読まなかった。An Introduction to Language作者: Victoria Fromkin,Robert Rodman,Nina Hyams出版社/メーカー: Wadsworth Pub Co発売日: 2002/08/02メディア: ペーパーバ…
PeerCast には設定の為に HTML サーバーが実装されているが、そのパフォーマンスはさして感心するようなものでもない。Apache HTTP サーバーのベンチマークツールである ab で計測してみる((ab -c 1 -n 1000 http://localhost:7144/html/ja/images/small-log…
http://www.tldp.org/HOWTO/Assembly-HOWTO/index.html32ビット x86 アセンブラについての HOWTO だ。DOS プログラマに向けて書かれてるのかな?しょっぱなから種々のアセンブラやプロジェクトの紹介が続き、おなかいっぱい。Linux のブートローダを書くのに…
陰線消去(というか陰線を点線に)して立方体を表示するプログラムがあります。ところが立方体を回すためには、矢印ボタンをカチカチ何度も押さなければいけなくて、ぎこちなかった。そこで操作の労力が減るように、カスタムウィジェットを作った。みためは…
WinForms でハローワールド 「.NETでRuby開発を体験してみよう − @IT」を参考に Ruby から WinForms を使ってみた。リンク先のコードをもとに書いたファイル main.rb がこれ。 # coding: utf-8 require 'mscorlib' require 'System.Windows.Forms' require …
カエルの動画を見ます カエルを描きます 背景を透明にします gimp を使うと良いでしょう。魔法の杖で背景を選択して切り取ります。線にスキマがあるとうまく背景だけを選択できないので、あらかじめえんぴつツールで線を書き足しておきます。きっともっと良…
The array is changed instantly every time the block is called, not after the iteration is over. http://www.ruby-doc.org/core-2.1.2/Array.html#method-i-delete_if ようするに条件ブロックが true を返したら次に条件ブロックが実行されるときには、…
Ruby の Array は可変長配列だと聞いていたので、先頭への要素の追加削除は既存の要素の再配置が必要になるから遅かろうと思っていた。ところが、実測してみると unshift/shift は push/pop と同等の速度だった。ふむ。Array は可変長配列(C++ でいう vector…
ここでは、2次元配列とは Array の Array を意味することにします。外側の親配列が同じ長さの小配列を持っている、 matrix = [[1,2,3],[4,5,6],[7,8,9]] のようなやつですね。視覚的にはこんな数字の表を表していると考えましょう。1 5 9 の軸が主対角線で …
2次元配列を回転させる方法を調べていたら、回転行列っていうのが何なのか気になった。定義には三角関数が入ってて難しげだけど、Wikipediaによると右に90°回すだけなら簡単な数字で回せるらしい。これに座標を入れたベクトルをかけると回した後の座標が…
長いあいだ Ruby/Gtk2 でカスタムウィジェットの作りかたがよくわからなかったけど、今日 rbbr を読んでいてやりかたがわかった。クラス定義の中で GLib::Object.type_register を呼び出して GObject システムに型を登録してから、GLib::MetaInterface.signa…
Rubocop というコードのスタイルをチェックするツールがあることを知りました。rubocop とすればディレクトリの Ruby ファイルについていろいろ教えてくれます。完璧ではないものの、rubocop --auto-correct とすれば自動で変更までしてくれます。これを自分…
オブジェクト指向プログラミングでは処理はメソッドで表わされる。メソッドはなんらかのクラスに属していて、そのインスタンスのデータにアクセスすることができる。つまり、メソッドは常になんらかのインスタンスを環境*1として実行される手続きだ。しかし…
例えばこういうオブジェクトを用意して…… Person = Struct.new :name, :age, :kawaii yukarin = Person.new 'Yukari', 17, true p yukarin #=> #<struct Person name="Yukari", age=17, kawaii=true> どういう風に表示したいか表にして…… table = [[yukarin, :name, :string], [yukarin, :age, :spin], [yukarin</struct>…
こんなのは DSL って言わないかもしれないけれど、ウィジェットの親子関係がインデントで表せてわかりやすいです。あと、名前付きオプション引数でウィジェットのプロパティが設定できたり、シグナル名を書くだけで convention で名前が付いてコールバックが…
先日、Ruby で labels に類似したパターンを書いたが、見た目も labels にできた。まずは実例から。例によって階乗。 def fact(n) labels iter: -> m, acc { m==0 ? acc : iter(m-1, m*acc) } do iter(n, 1) end end fact(10) => 3628800 実装は次のようにな…
次のコードに等価なものを作りたい。 (defun f (a b) (labels ((g (c) (list a b c))) (g 'z))) (f 'x 'y) ; => (X Y Z) 新しい Object にシングルトンメソッドを定義しよう。 def f a, b Object.new.instance_eval { self.define_singleton_method(:g) do |…
Ruby ではメソッドに渡すブロックの表記に do end と {} の2つがあるが、その違いの一つは、do end は引数リストの括弧を省略できるということだ。次のようなテスト用のメソッドを用意して、確かめてみる。 # 渡された引数とブロック引数を配列にして返す。…
HTML のように閉じ括弧にコメントをつけられるよ。 ;; 3の倍数か? (def mult_three? (n) (if (.== 0 (.% n 3)) true false #/if) #/def)
関数位置に置けるのは、関数を表すシンボルと lambda フォーム、proc フォーム、そして meth フォーム。. は meth フォームを生成するリードマクロだ。 ラムダ > ((lambda (x) (.* x 2)) 3) read: [[:lambda, [:x], [[:meth, :*], :x, 2]], 3] ruby: lambda …