とんちゃんといっしょ

Cloudに関する技術とか日常とかについて書いたり書かなかったり

プログラム

エラトステネスの篩2

昨日に続いてエラトステネスの篩の話 昨日見つけたソースコードを見てるとどうしてもパフォーマンスが気になったので測定してみた。 require 'benchmark' Benchmark.bm do |x| x.report("My Primes:") { prime = [2] # 最初は 2 だけ 3.step(1e6, 2) do |i| …

エラトステネスの篩

息抜きにProject Eulerしてたら2百万以下の素数表が必要になったのだが、 mathn.rb内にあるPrime#succを使ってるといつまでたっても計算結果が返ってこない。 Prime#succのソースコード読んだら確かに遅そうだったので、 エラトステネスの篩を実装してみるこ…

トークセッションに行ってきた

毎日コミュニケーションズ刊 『Rubyで作る奇妙なプログラミング言語 〜Esoteric Language〜』刊行記念 「Rubyで作る奇妙なプログラミング言語の世界」 のトークセッションに行ってきた。 昼前にPascalと堂島アバンザの前で待ち合わせて、カレーを食べて店内…

プログラミングGauche読書会だけ行ってきた

午前中のGauche読書会だけ参加させてもらった。 Gaucheの読書会なのに、Gaucheを理解するために他言語での挙動を例えることが多い。 「この挙動はJavaScriptのこの動きによく似てる」 「Perlではこういうのがあって」 「Rubyで例えるとこういうのが対応して…

autospecのおかげで

テストが自動化されて、ソースコード書くのが楽しくなった。 RSpecでのBDDは楽しい。 でも、テストケース考えてテストコード書くのがめんどくさい。 やっぱりこの辺自動化すると楽だよねと再認識した。 さて、リファクタリングがんばるか。

Gauche読書会#5・SICP勉強会#5に行ってきた

日ごろ昼まで寝てるけど、休みの日だけは早起きだったりする。 でも、予定のバスを乗り逃して1本遅れたら15分ぐらい遅刻してしまった。 午前中はGauche読書会。 前回、出席できなかったので一応予習をしてみたけど今回の範囲まで間に合わなかった。 会場まで…

Gauche勉強会2

本日も私の独演会。 相変わらず資料の作成が間に合わないのは仕様。 ぎりぎりまで資料の作成を行い、最後は時間が足りなさそうなので問題を増やしまくった(ぉ Gaucheは初めての人が2人いたのでとりあえず前回のおさらいをしてから本日の内容。 本日はリス…

今日もアドリブで

1時間ほどリサイタルしてみた。 朝方まで火曜日にできなかった資料を作って就寝。 起きたらご飯を食べて学校へ。 部屋の利用申請で、申請した教授が勝手に変わってて防災センターで首をかしげたけど、 事務のミスだということで納得してもらえた。 今日は火…

資料できてないけど

昨晩のバイト中からGaucheの勉強用資料を作ってみた。 バイトから帰って続きを書こうとしたら、内定先の同期からメッセに召還されて4時間拘束。 9人もいたら流れが速すぎて、裏で作業ができずに資料ができないまま眠る。 そして本日、学校でも資料を作ってみ…

listの実装を2つ

p74の練習問題であるlistの実装をやってみた。 ;最初に思いつく実装 (define (list . args) args) ;lambdaを使ったバージョン (define list (lambda args args)) lambdaを使わないほうがすっきりしてわかりやすい。

とりあえず3冊

学校のブックセンターに注文していた本が本日届いたらしいので取りに行った。 アジャイルレトロスペクティブズ 強いチームを育てる「ふりかえり」の手引きposted with amazlet at 08.10.03Esther Derby Diana Larsen オーム社 売り上げランキング: 27347Amaz…

思いついて試してみた

ふと++演算子について疑問に思ったので実験してみた。 int main(void){ int i = 0; printf("%d\n", ++i++); printf("%d\n", i); } 予想では 1 2 となるかと思ったけど。 gcc -o sample.exe sample.c sample.c: In function 'main': sample.c: error: invalid…

「プログラミングGauche」読書会#3に行ってきた

朝から勉強会に海老江まで。 駅でid:yoppiblogとたまたま合流して会場まで。 会場では3時間ほどGaucheを満喫した。 でも、時間内では一部の練習問題しかできなかったので帰ってからの宿題にしておく。 あと、前回もこの会場に来たのだがその後ひどい風邪をこ…

第30回 Ruby/Rails勉強会@関西にきてます

信長の野望 on Rails by 石川さん 信長の野望(簡易版)をRailsで作ってみようというおはなし。 ゲームプログラミングではなく、Railsを初心者に教える際の方法としての提案がメイン。 個人的にはこの内容でRailsがすごいのはわかると思うけど、 逆にRailsを…

6章終わった

バイト中だけど社長もEeePC弄って遊んでるから、気にせずGaucheの勉強。 本日で無事に6章を終えた。 本日の成果

バイト中だけど

仕事がないからプログラミングGaucheを勉強中。 P53のcopy-listを参考にdeep-copy-listを作成してみた。 ;copy-list (define (copy-list lis) (if (pair? lis) (cons (car lis) (copy-list (cdr lis))) lis)) ;deep-copy-list (define (deep-copy-list lis) …

JRubyでSwingを叩いてみた

require 'java' JFrame = javax.swing.JFrame frame = JFrame.new("Hello Swing!") frame.getContentPane.add javax.swing.JLabel.new("Hello Swing!") frame.setDefaultCloseOperation JFrame::EXIT_ON_CLOSE frame.pack frame.setVisible true 割と簡単に…

1 ,1, 2, 3, ●,8, 13, 21,34, 55, 89, 144・・・・・・

某掲示板にて 1 :止まない雨は名無しさん:2008/08/21(木) 16:04:26 id:llpRpJ2B0 ●に入る数字は何か? この数字を1000番目まで続けていくと3の倍数は何個あるか? 20分以内 答え1時間後 Rubyで解いてみた。 fib = Hash.new{|h, k|h[k] = h[k-1] + …

ore言語実装講習会

Pascalがやるといってたore言語実装講習会に1時間遅れで参加。 最近は研究でRacc使ってParser書いてるから内容がよく分かる。 昼まで四則演算が出来る程度のParserを書いてから御飯を食べに学食へ。 N嶋研のM2の人々がいたので合流して御飯を食べた。 昼から…

Symfony

何回も実験してるのでそろそろメモしておこう。 1.DBを作る 2.Symfonyを叩く 参考:symfony入門(2):掲示板アプリケーション作成でsymfonyを理解しよう(前篇) #cd tel #symfony init-project tel #symfony init-app telbook 3.config/database.yml…

Symfony

バイト先で作っているPHPのプログラムをフレームワークを使って書くことに変更。 とりあえずSymfonyを使ってみることに。 ThinkITの第2回:Symfonyを例にしたフレームワークを使ったPHP開発を見てサンプルを作成。 なんか変な部分が多々あるが、そういうフ…

git - 分散バージョン管理システム by 舘野祐一さん

途中までログとったけど資料は上がってるらしい。 http://rubyist.g.hatena.ne.jp/keyword/080726Ruby%E9%96%A2%E8%A5%BF%E5%8B%89%E5%BC%B7%E4%BC%9Agit 前にgit使おうとしたけどPascalにMercurialを勧められてhg使ってる。 おかげで、今日の話がだいぶわか…

PHPは

何ではやってるのかよく分からない。 もしかすると私がまだ全然わかってないだけかもしれないが・・・ でも仕事だから仕方がないか。 そう思ってPHPを書いていたら、社長からPCの作成命令がでた。 嬉々としてPC製作に取り掛かったら1時間もかからんかった。 …

OSC2008 Kansaiにいってきた@2日目

本日もOSC2008 Kansaiに行ってきた。 原付で最寄り駅まで行こうとして、ゆっくりしてたら母が原付を使うというので急いでバスに乗る。 でもやっぱり予定時間にはつかないので、一緒に行く予定だったPascalには先に行ってもらう。 遅れたはずなのになぜか昨日…

OSC2008 Kansaiにいってきた@1日目

現地でネットワークが提供されていないみたいなのでリアルタイム更新が出来ない。 あと、現在は猛烈に眠いのでまたの機会に延長(ぉ

PHPは読みにくい

バイト先で社長に頼まれたプログラムをPHPで作成中。 PHPはまったく手を出していないので、まずはサンプルコードを読むところから。 ・・・読みにくいな。 処理の流れとかは追えるのだが、ソースコードを見ていてなんか楽しくない。 とりあえずは、DBから検…

そういえば

今日Pascalと話していたら、Rubyのlambdaは.callの省略に[]が使えると言われて、 そういえばそんなので行けたなと思い出す。 というわけで、短くしてみた。短縮前(.call使用) f=lambda{|n,m|n>m&&m>0?f.call(n-1,m-1)+f.call(n-1,m):1} p eval"f.call(#{ge…

通らなかったので晒してみる

Choose:http://codegolf.com/choose この問題にRubyでチャレンジしていたが1byteを削るのが難しくなった。 トップとは20byteぐらい離れているので多分アルゴリズムが違うんだろうと色々試す。 色々試したが、まったく縮まらない。 再帰を試していたところだ…

PHPとか

社長からPHPでDBを使ったアプリの作成を依頼される。 中身は簡単なんだが、PHPがよく分からん。 とりあえず、社長にDBの仕様について話を聴いていたら、 「おっ、篤姫始まるから俺帰るわ!」と言って帰っていった。 社長・・・仕様がわかりません・・・ おな…

久しぶりの仕事で

社長から簡単なアプリケーションの仕事を頼まれた。 正直バッチファイルでいけるとおもったのだが、バッチファイルでは手が届かないところがある。 というわけで、環境依存にしないためRubyをやめてJavaで取り組む。 ・・・JavaでWindowsのDOSコマンドを叩く…