コンピュータ

close-portを使わずに Gaucheでコマンドの実行時に文字列を標準入力として与え、その結果を得たい(失敗)

昨日のつづきをやってたんだがgaucheでclose-port無しにパイプをうまくコントロールすることが出来ない。 >>((lambda (cmd str) (call-with-process-io cmd (lambda (in out) (copy-port (open-input-string str) out)(close-output-port out)(port->string …

Gaucheでコマンドの実行時に文字列を標準入力として与え、その結果を得るためには

gaucheでコマンドの実行時に文字列を標準入力として与え、その結果を得るためには call-with-process-io を使う。portをcloseするのがめんどくさい。[http://d.hatena.ne.jp/n9d/20070218/1171800306:title]">*1 なぜdisplayをprintにすると動かなくなるかは…

ruby - ワンライナーの書き方入門 ane,apeだけで大体いける

なんか流行ってるみたいなのでいつも使うものを数点あげてみます。 rubyでワンライナーするときには-aneと-apeだけおぼえれば大体いける。 日本生まれだけあって日本語はほとんど気にしなくてOK データは以下 $ cat > d.txt 1 ひとつめ foo 2 二つ bar 3 …

ちゃんと自分のOSの噂を見張ってるんだなぁ

信者って認定するとなんかいわれそうだからいわない。いつもの自分のサイト のようにlinuxユーザが比較的多いのがわかる。例のOSは4.67%ここ二日 どうやって探してるんだろ?キーワードかなぁ?

大予測!macはフェラーリになる!!

最近、田舎では軽自動車がよく走ってる。購入コストと燃費なんだろうな。と言うのを前置きにして 今 普通車 macを含んだ十数万円のPC 軽自動車 携帯電話 将来 フェラーリ mac 普通車 十数万円のPC 軽自動車 1万円のPC うーん、普通車は消えそうな気がする(…

EeePCとmac…ブランドにこだわるのは品定めを自分で行うことをサボっている人

はてブでも書いたが、できることが同じなら安い方が残るはずだ。 まあ、(出歯亀)ジョブスはソニー並の販売戦略で復活したからこれからも生き残りつづけるというapple信者がいるかもしれないけど。 単にファッションとしてのmacが残るだけでしょ。 Eee PCの3…

rubyでスレッドを用いて検索範囲を分担する

タイトル通り #!/usr/bin/ruby # 1からnまでの数を配列srcにランダムにセット src=[] nums=(1..20).to_a nums.size.times do src.push(nums.delete_at(rand(nums.size))) end # srcを出力する p src a=[] #一つめのスレッド a.push Thread.fork{ sleep rand…

rubyとスレッドと大域変数 

そうかrubyにはスレッドがあった。 #!/usr/bin/ruby def foo(a) sleep rand(5) puts a end Thread.fork{ foo("1")} Thread.fork{ foo("2")} Thread.fork{ foo("3")} foo("0")結果 $ ruby thread.rb 0 $ ruby thread.rb 3 2 1 0 $ ruby thread.rb 2 0見事に親…

rubyとforkと変数…大域変数が作れない

rubyはcygwin上でもforkが平気で出来るまれな言語。 $ ruby -e 'fork{puts "child"}; puts "parent"' parent child $ ruby -e 'fork{puts "child"}; Process.wait; puts "parent"' child parentきちんとwaitも実装されている。 $ ruby -e 'fork{puts "1"};fo…

神のお告げ=ロック(セマフォ)を知らない人達

問題:マシンが2台あります。2台が共有しているディスクで同じファイルを編集するにはどうしたらいい?解答:oracle使います。…いいよ。RDBもpostgressとmysqlがあるからさ…いいよ。くじけず、さらに言ってみた。問題2:マシンが2台あります。RDB無しで…

OLPCのニュース動画

OLPCのニュース動画を見付けた。 著作権的にまずいのかもしれないがこのコメント達を見てるとなんかもの悲しいかったので記念に。sm1661310なんか直接みえちゃうとまずいなやっぱ。動画番号だけに変更

OLPCがわからなくなった。

ちょっとした機会でOLPC用のsqueak-eToysにふれた。そういえば100ドルPCはどうなったんだろうと OLPC Japan/lang-ja - OLPCを読んでみた。ほかのサイトではアンチもたくさんいた。自分自身は世界中の人間の識字率をあげることに寄与しそうな気がするんだけど…

人柱(?) OLPC image for non-XO environments

結論まったく役にたてなかったと思います。 korakuriderkorakurider 2008/03/06 12:18 OLPC以外のプラットフォーム用には、Squeakland OLPCというのが出る予定です。イメージは基本的に同一で、プリファレンスの設定を変えてあります。その開発途中のものが…

debian(etch)上でOLPC Etoysを走らせるには

大層なタイトルだけど、全然大変じゃなかった。id:korakurider さんにOLPC Etoysの存在を教えてもらってからざっと調べてみたところ、Etoys/lang-ja - OLPCを発見。 方法1(最も簡単) - SqueaklandインストールパッケージとOLPCイメージを使うこの方法が狙っ…

Squeak eToysで三角関数無しでサインカーブ・サイクロイド・トコロイド・カージオイドを書くには

Squeakでサインカーブ・サイクロイド・トロコイド・カージオイドを書くには三角関数なんか不要なんです! というか、eToysには三角関数なんか実装されていないのです。その代わりに小学生でも理解できるでしょう。 円座標を生成する遊び場 円の座標を取り出…

leditでgaucheを楽しむことができるか?

結論としてrlwrapを置換する程の魅力が無かった。 leditというフランス製(?)なツールをid:Gemmaさんに教えてもらったのでgaucheで早速実験 $ sudo aptitude install ledit $ ledit /usr/bin/gosh -i基本的な動きはrlwrapと変わらないのね。 ざっと探して…

xtermでVLゴシックを使うためには

xtermでVLゴシックを使うためには以下のとおりコマンドラインオプションでは $ xterm -fa 'VL Gothic' -fs 10ということで windows上のputtyと同様に左ボタンドラッグでコピーバッファへコピー、中ボタンでコピーバッファをペーストするための.Xresoucesは以…

gaucheをemacsで補完する(意味が全く通らない)

scheme-complete.elがすごい - 日記を書く [・w・] はやみずさんを見てemacsを設定する気が起きた。注意しなければいけないのはGauche / Thread: [Gauche-devel] ANN: scheme-complete.el - smart tab completionのscheme-complete.elへのURLは,が余計に入っ…

gaucheのsystem該当の関数はprocess-output->stringと思ったがcall-with-input-processの方が良い

gaucheのsystem該当の関数は(call-with-input-process "コマンド" port->string)で決まり >>(regexp-replace-all #/\n/ (call-with-input-process "echo -e 'a\nb\nc\n'" port->string) " , ") =>a , b , c , , gaucheのsystem該当の関数はprocess-output->s…

gauche+rlwrapで関数補完を行う

.bashrcに以下を追加 export RLWRAP_HOME=~/.rlwrap function gosh(){ if [ $# -ge 1 ] && [ $1 == '-e' ]; then echo "$2">$$.scm;shift 2;`which gosh` $$.scm "$@";rm $$.scm; else rlwrap -b '(){}[],#\";| ' `which gosh` "$@";fi }補完リスト作成 $ go…

cygwin上のbash補完を高速にするには

ck.exeでbashを使うと補完がおそい。特にコマンド補完がおそい。 そこでrlwrapと組み合わせる.bashrcに export RLWRAP_HOME=~/.rlwrap を追加 $ mkdir .rlwrap $ echo $PATH | sed 's/:/\n/g' | xargs ls | grep .exe | sed 's/\.exe//g' | sort > .rlwrap/b…

コマンドラインでgaucheを使う際に(括弧)の対応をリアルタイム確認するには

bashでフィルタ代りにgaucheを使う際に問題になってくるのが括弧だ。 特に閉括弧の対応に困ってしまう。 そこでrlwrapを使う。 ただし、そのまま使うとbashのreadlineが有効になってしまうのでOFFする $ rlwrap bash --noediting見事に括弧の対応がとれるよ…

debian(etch)上でgnome-terminalからxtermに乗り換えてマウスドラッグでクリップボードへコピーするためには

terminalのマウスドラッグ時のコピー先をカットバッファからクリップボードにする - 計算機と戯れる日々とほぼ同じなのだが、efontを使って外観をなるべくgnome-terminalに近づけようとした。 $ vi ~/.Xresources $ xrdb -merge ~/.Xresources$ cat .Xresour…

debian(etch)にefontを導入しxtermのフォントをちょっとはましにするには

gnome-terminalはカットバッファとクリップボードを区別しているのでxtermに乗り換えたいのだが、どうしてもxtermでttfを使う方法がわからないので代替手段としてefontを使うことにする。 fontの勉強を最初からやる必要があるなぁ。 $ sudo aptitude install…

gaucheを用いて標準入力から読み込んでそのまま出力する

強制的にschemeに馴染むためにコマンドラインからruby,perlを駆逐することにした。 (いいのか?こんな宣言をして)そしていきなりつまづいた。 schemeで標準入力いじってなかった事に気がついた。 (print (port->string (standard-input-port)))例: $ echo…

debian(etch)にIPAフォントを入れるには

inkscapeで日本語フォントがもっとほしくなったのでIPAフォントを入れてみた。 $ cd /tmp $ wget http://ossipedia.ipa.go.jp/ipafont/IPAfont00203.php $ unzip $ mv IPAfont00203/*.ttf /tmp以下を /etc/apt/sources.list に追加 deb http://www.j96.org/~…

debian(etch)で操作を動画でキャプチャするためには

debian(etch)で操作を動画でキャプチャするためにはistanbulをつかう。 # aptitude install istanbul出力ファイル系式はOgg data, Theora videoとなる。だがウィンドウキャプチャが無いのであまりつかえない予感。 設定項目も少ないのよね…

Inkscapeでデフォルト入力できる日本語

debian(etch)上にてtaskselでdesktopのみを選択してる場合、inkscapeで使える日本語フォントはVLゴシックだけになるみたいだ。インストールすればいいんだろうけど、うちにあるマシン全てにインストールするのはあまりのも面倒だ。 選択できるフォント: ・VL…

Googleに流す情報をコントロールしウェブ履歴と上手につきあうには

・任意のサイトはウェブ履歴に残したくない。(例:自分のサイト) ・Google Toolbarをインストールしたくない。というときには、Greasemonkey+Opera で Google Web History を使えるようにする UserJS - mallowlabsの備忘録で解決する。まずGreasemonkey –…

emacsでの置換の際に改行を使うには

googleのソース読もうと思ったら 改行がないので…置換しようとして固まった はずかしながら LFのコード忘れてた。^Jなのね。 000 1100 12 0C FF ? L 改ページ 000 1101 13 0D CR ? M 復帰 であるからしてemacsでの置換の際に改行コードを埋め込むには unix系…