トップ «前の日記(2008-08-30) 最新 次の日記(2008-09-01)» 編集

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|

ToDo:


2008-08-31

_ えるえる

あつかましく Larry のサインもらた! もう俺はそれで全て良い。

何度か語ってると思うけど実はそんなに語ってないかもしれないけど、 僕はそんなに好きなプログラム書籍とかそんなに語れないんだけど、 いわゆるラクダ本は大好きな本で、 すっぽすっぽのプログラミング言語 C++ とかと 同じ程度には影響とかはある気がするんだ。 まぁ僕は本に影響されるとか今一つピンときてないのであやしいけど。

サインもらった記念に Perl をベタボメする。

Perl っていうのはこう、変態言語愛好会にとっての LISP と 考えても全く問題ないと思う。 ヤツらはこう10年先を行ってると考えてよく、 LL とか好きな子がこんなハッキーなことやったぜ!! っていうのは、 「あーそれ Perl が 3000年前に通った道」 みたいなこと言われてもおかしくない程度には すごいというのを認識してからの方が安心かもしれないのです。

例えば今日とか Perl Golf というのを Web ベースで… とかほげほげ司会のかたがおっしゃってたけど、 あれはたぶんウソで、当初は newsgroup で行なわれてたんだと思う。 newsgroup とかいう時代からゴルフやってた連中なわけですよ。 知らんけど。

まぁゴルフのこととか書くとまたそんな話か的な感があるけど、 Perl で実行できる詩を書く perl poem とか、 Acme::* とか、 JAPH とか、 ほげほげとか、ふがふがとか、

…と書きたかったんだけど、ぶっちゃけあんま Perl とか知らんな。 まぁそいう子はとにかく Perl を学ぶべきなんです。たぶん。

でまぁラクダ本も Larry がそいうの好きなんだなぁ という感じがすごくするのでこう良いのですよ。

用心しろよ、 emacs さん。言語を内蔵するのは、君だけの専売特許じゃないよ :-)

とか、まぁこうなんというかこいうのいいね。

だいぶ前に書いたこのへんの頭おかしい話とかも 別に秘奥義とかじゃなくて単にラクダ本に書いてあったわけだし

http://d.hatena.ne.jp/shinichiro_h/20071107#1194442793

(00:49)

_ title

http://d.hatena.ne.jp/takkaw/20080830/p2

ちなみに Python にも capitalize もあります。 (is)?(upper|lower|title) とさらに capitalize がある、というのが現状らしく、 Python は大文字小文字変換界の雄と言っても良いのではないかと思います。 iscapitalize が何故ないのか、それを考えて余生を過ごそうかと思います。

(00:55)

_ isakr

で、今日の呑み会で、 isakr みたいなのがあるといいんじゃないかということなので さっそく作ってみました!

class String
  def akr?
    # must not be capitalized
    return false unless self[/^[a-z]/]
    # there should be continuous upcases
    return false unless self[/[A-Z][A-Z]/]
    return true
  end
end

puts "defLATE: #{'defLATE'.akr?}"
puts "deflate: #{'deflate'.akr?}"
puts "Deflate: #{'Deflate'.akr?}"
puts "dEflate: #{'dEflate'.akr?}"
puts "DEFLATE: #{'DEFLATE'.akr?}"
puts "deFLate: #{'deFLate'.akr?}"

実行結果:

defLATE: true
deflate: false
Deflate: false
dEflate: false
DEFLATE: false
deFLate: true

とりあえず現実の例が一つしか無いので、 仕様策定が難しそうですね…!

(01:04)

_ String#akr

akr? があるなら実装はかんたん

class String
  def akr
    akrize = proc{|s|s.split('').map{|_|rand<0.5 ? _.upcase : _.downcase} * ''}
    until (s = akrize[self]).akr?
    end
    s
  end
end

10.times{puts 'deflate'.akr}

実行例

dEFlate
deFLaTe
dEFlaTE
dEFlAte
dEFLATE
dEFLatE
deflATE
dEFLATe
dEFlAtE
dEflATe

いかにもいやなかんじのものが

(01:09)

_

昔見た時は deflate 違ったような気がするなぁ… とか思ってぐぐったらやはり別の事例を発見した。 うん僕が見た時は DeFLaTe だったような気がする。

というわけで先程のコードには重大なバグがあるので プロダクションでは使わないようにおねがいします

(02:01)

_ そういえば

ほげほげより C++ の方が中二病としてはほげほげな気が するというような気がする的指摘。

たしかにほげほげは中二病そのものだと思うけど、 C++ はこうやりたくなることはわかるなぁ うん実際にはそんなに書かないんだけどね、

というあなた

は中二病なので問題ないというような。 いやそういう話だったか

(23:44)

お名前:
E-mail:
コメント:
人生、宇宙、すべての答え
本日のリンク元

2008年
8月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
1.星一(2014-05-24 01:41) 2.なかむら(う)(2014-05-24 01:41) 3.星一(2014-05-24 01:41)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h