Just another Ruby porter,

〜2007年2月上旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2007-02-01 (Thu)

1月のspam

410通。Gmail側約4400スレッド。

[CodeGolf] 空行の削除

awkの4Bはどこかで見たテクニック。
sedの5Bは2通り考えついた。
bashの6Bはsedの2つ目の応用で。表と裏というか。


2007-02-02 (Fri)

[CodeGolf] アナゴル

blankのsedの別解は/./!dです。だからgrep .なわけで、
その流れでawkは3Bになると。

echoはpgじゃなくてddを使いました。
っていうかpgって何って状態だった。

なんかDancingをBashの内部コマンドだけで挑戦してるようなので、
こちらも挑戦。Rubyで使ったアルゴリズムをそのまま移植。
結構なんとかなるもんだと思ったり。


2007-02-03 (Sat)

[Soft] PeaZip 1.3

About:
PeaZip is an archiver tool that supports its native Pea archive format (featuring compression, split volumes, and flexible authenticated encryption and integrity check schemes) and other mainstream formats, with special focus on handling open formats. It can create/browse/extract 7Z, 7-Zip sfx, Bzip2, Gzip, PAQ, PEA, split, TAR, and ZIP. It can browse/extract: ARJ, CAB, CHM, CPIO, DEB, ISO, JAR, LZH, NSIS installers, OOo files, RAR, RPM, and Z.

こんだけあれば大抵間に合いそうだ。

[Unix] Bashの(())

man bashしてみると結構知らない機能が多い。
普段は移植性を考えて変な機能は使わないしねえ。

read c
((${#c}>4))&&echo yes||echo no

てな感じでcに入ったバイト数を判断できる。

[CodeGolf] 空行削除

あ、そうか。2Bでいけますね。不思議なことに可能だと示されると思いつく。
それにしてもawkってほんと奥が深い。

[CodeGolf] ナイスアイディア

それいいね。example.comが一気に縮む。


2007-02-04 (Sun)

[CodeGolf] e

bcはインストールされてないようだ。残念。

echo 'scale=100;e(1)'|bc -l|tr -d '.\\\n'

2007-02-05 (Mon)

[CodeGolf] Hamming Numbers

Bashで挑戦したが100がどうしても時間内に終わらない。
困った。

うささんに教えてもらった方法で通った。


2007-02-06 (Tue)

[Vim] CodeGolf御用達Vimでサイズ表示

:h line2byte()すると

line2byte(line("$") + 1)

で実際のサイズ+1が得られる。それをechoすれば

echo line2byte(line("$") + 1) - 1

で表示できる。適当に

map gc :echo 'size'line2byte(line('$')+1)-1<CR>

gcとmappingしてみたが、どうせならstatus lineに表示しちゃえ。
set statuslineで

%{line2byte(line('$')+1)-1}

をどこかに含めればいい。現在のstatuslineは

set statusline=%<%f\ %m%r%h%w[%{&ff}][%{&fenc?&fenc:&enc}]\ %BH\ %{line2byte(line('$')+1)-1}B%=%l,%c\ %P

となった。なんだかよくわからんな。

[CodeGolf] ずるじゃないecho

Rubyで8バイトのechoはずるしなくても可能です。


2007-02-07 (Wed)

[CodeGolf] 偶数行を表示

停滞気味だったので新たな問題を出してみた。
なんというか簡単な問題なんだけど、新たな発見があって楽しい。
特にawkは。sedの4Bはなあ。ちょっとねえ。man sedしてみるといいよ。
奇数行も出すか。ってすでに3B予告されてる。

[Mail] 〜 サブミッションポート ( port 587 ) の標準提供開始 〜

ということらしいので早速申し込んだ。msmtpの設定は~/.msmtprcに

account default
auth on
host SMTPホスト名
port 587
from 自分のメールアドレス
user ユーザ名
password パスワード

てな感じでいけた。


2007-02-08 (Thu)

[CodeGolf] Dancing Kids

なんとなくsed版に挑戦。sedだとtで分岐するしかないし、
その先でcで表示するなんのひねりもないものを作ったら意外と小さい。
そのままbashに移植したらいきなり更新。Rubyに移植したらまた更新。
というわけで、煮詰まってるときは別の言語でやってみるといいかもしれない。


2007-02-09 (Fri)

[CodeGolf] Square root

平方根なんて知らないのさということで、文字列の入力と出力だったらsedでしょやっぱ。
sqrtとprintfを持ってる言語だとそれなりにできてしまうし。
1,2行目が2,3なのはやはりそういうことなんだろうと作っていて思った。


2007-02-10 (Sat)

[CodeGolf] Fibonacci Numbers

なんで46まで?16進表示して納得。Cでは楽できる。
PerlとBashでは予想外な結果に。Bashって結構豪快だな。

入力がないとsedが使えなくて残念なので、 改行1個のファイルかなにかを指定しといて欲しいな。

[CodeGolf] sort characters

info sedしてたら圧縮する方法を思いついたので試す。140B。わるくないね。


<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!