gdgd

気づかなかった

Emacs Advent Calendar jp: 2009 : ATND http://atnd.org/events/2400 こんなのがあったのか。気づかなかった。

ひとりしりとりをすると語彙力が上がるかもしれない。

はじめに こんなエントリを発見したので、語彙力を強化したいと思いました>< http://gitanez.seesaa.net/article/73526071.html http://gitanez.seesaa.net/article/73630167.html 語彙には使用語彙と理解語彙があるそうです。 使用語彙 自分が話す時に使…

"で""とか(で()とか

ruby-electricの機能を 他の言語を書いている時にも使いたいと思っていました。 具体的にはこんな感じ "{"と入力しただけで自動で"{}"と入力してくれる 入力したかっこの中にカーソルを置いてくれる 他の言語でも設定すればできるらしいので http://d.hatena…

少しだけpythonで遊んでみた。

とりあえず、fizzbuzzでも作ってみよう。 # -*- coding: utf-8 -*- # 上のように書くとマルチバイト文字が使えるようになる。 def fizzbuzz(n): if n%3 == 0 and n%5 == 0: return "fizzbuzz" elif n%3 == 0: return "fizz" elif n%5 == 0: return "buzz" el…

メモリ消費量を無視したquicksort

ブロック渡しの練習に良いかもしれない。 >準備運動のメニュー class Array def qsort(a=self) return a if a.size<=1 x=a.shift qsort(a.select{ |e| e <= x}).concat([x]).concat(qsort(a.select{ |e| x < e})) end def qsort2(a=self, &b) b = proc{ |e, …

screenshotなんて初めて撮った

今日の一枚というところに、anything-rcodetoolsを使っている時の画像を貼ってみたけど…画像が表示される位置を自由に調節できないのかな?

準備運動用のメニューを出力

shellを立ち上げるのも面倒になった。 最近は、PCをつけたらまずはじめにこんなかんじのことをしています。 (shellを立ち上げて、"quiz.rb"を起動。ー>一行程度でお題が出される。それを5分ぐらいでする。) shellを立ち上げるのも面倒になりました。emacs…

テーマ変更

コードが表示できる幅が広い方がいいと思いました。 こちらの方がコードが読みやすいような気がします。

null-print

何も表示しない関数を作った。(置換しておくと便利かもしれない。) (define (null-print x . y)) ;;(replase-string "print" "null-print")のようにして使う。 .emacsに追加した。 (add-hook 'scheme-mode-hook '(lambda () (define-key scheme-mode-map "\C…

heapsort

データ構造の説明 ひとつの配列でヒープを表している(classを作って再帰的にとかしてない) a[0..(a.size-1>>1)]までが親 a[i*2+1]が左側の子 a[i*2+2]が右側の子 常に親>子の関係が成り立っている。 a=(0..30).map{rand(100)} def a.heapsort &block n = s…

mergesort

a=[52, 0, 1, 92, 93, 83, 29, 99, 48, 13, 24, 28, 68, 17, 19, 82, 67, 14, 22, 85] def a.merge_sort(&cond) cond = proc{|x,y| x

sortしてみた

(実際に投稿したのは24日です><) 最近、読んでいる「再帰の技法」という本の中にいろいろなソートアルゴリズムが出てきたので、 それをrubyで書いてみた。 理由 C->rubyという変換をすれば、以下のことがわかる気がしたので。 C-の文法になれることができ…

emacsタグを作った方がいいかもしれない。 図形言語で使う絵が決まらない(sicp)

黒魔術に手を染めてしまったかもしれない。

再帰の技法という本にある問題で、こんな感じの出力を表示する問題があった。F true=>T でした">*1 bo b1 b2 (b0 or (b1 and (not b2))) ---------------------------------------- false false false false false false true false false true false true f…

うまくいかない。

要望 こんな感じのスクリプトが作りたい。 #作ったスクリプトの名前が「rpipe.rb」 $ which refe #=>/var/lib/gems/1.8/bin/refe $ which refe | rpipe.rb cat #cat /var/lib/gems/1.8/bin/refe に置換されて実行される。 問題点 ターゲットを親ディレクトリ…

コマンドの実行コストはrubyより重いかもしれない。

何かのアプリケーションを実行しているときに、そのアプリケーションのプロセス番号を調べるようなことがしたかった。 rubyプロセス番号を抽出するときに、ruby上でした方がいいのかコマンドのgrepでした方がいいのか分からなかった。なので調べてみた。(元…

昔作ったdeep-reverseが間違ってた。

昔書いたところを読み直していたら、間違いに気づいた。 deep-reverse1 最初に作ったもの(動かないときがある) deep-reverse2 たぶん動く deep-reverse3 mapを使ったもの (define (deep-reverse1 tree) (if (pair? tree) (cons (deep-reverse1 (cadr tree)…

そういえば

1 昔作った「3つの数のうちから大きい数2つの和を返す」というような関数ってもっと一般的に定義できる。 (use pre-sicp) (define (f n . seq) (define (select seq count) (if (= count n) '() (cons (car seq) (select (cdr seq) (+ count 1))))) (accumul…

実際にやってみて

なんでもない内容のことでも説明しようとすると面倒。

継承について

継承を使ったコードを書いてみる。 rubyに標準で存在するArrayクラスを継承したクラスMyArrayをつくってみる。 このMyArrayクラスは、Arrayクラスとは異なり、要素のならびをシャッフルするshuffleメソッドを持っている。 class MyArray < Array #MyArrayはA…

オブジェクト指向を理解しているか分からないので実験*1

簡単に説明できたら、分かっている。そうでなければ、わかっていない。 やってみる。

2つに分けられる?

プログラム言語を使う人は2つに分けられる 言語のユーザー プログラマ プログラム言語のユーザーは2つに分けられる お勉強 (主にCとかを使う) (資格をとるために勉強したり、学校で勉強した) (ちょっとした計算は書けるけど、使い道はない) なんとなく…

リングに入っているのに、そういえば…

rubyのこともubuntuのことも書いてないかも。

no_title

content="" #何か def ask(you=:human, stress=0) if you == :human puts "#{content}で検索してください" search_by_yourself else puts "あなたは ***ですね。" puts "丁寧に教えてあげます。" i_teach_you end def search_by_yourself if solve? puts "go…

長文

何でこんなこと書いたんだろ?

プログラミングがbasicからなら、プログラミングを始めることはなかった

はじめに 最近、プログラミングには論理回路の知識が必要だとか、こんなような話を読みました。 昔はBasicでプログラミングを学んだ。 そのころは、雑誌に載っているコードを打ち込むことで楽しいと思えるゲームがつくれた。 でも、今の子どもにプログラミン…

javascriptを始めて10日くらい

やっとjavascriptの文法にも慣れてきました。 MDC*1のおかげです。MDCの中の人に感謝。 *1:http://developer.mozilla.org/ja/docs/

どう書く?(重複無し乱数)3

追記 これで、偏りが生じるsortなことははっきり分かる。 def myrand (rand+0.5).to_i end p (1..100000).inject(Hash.new(0)){|h,e| h[[1,0].sort_by {myrand}]+=1; h} #結果 #{[1, 0]=>74999, [0, 1]=>25001} 参考までに x=lambda {|arr| arr.each_index {…

webrickを読む件について

やる気が起きなかった。 何もしなかった。(´・ω・`) 明日やれたら良いと思う。

rubyのコードが書けるようになるまで(後でまとめる)

懐古 プログラミング自体初めての状態から、もうすぐ半年。 そこそこrubyの文法にも慣れ親しんで、気軽にコードも書けるようになってきた気がする。 ここら辺で、過去の自分を振り返ると共に、今から自分がrubyをはじめるとしたらどうするか書いてみようと思…