2006-01-01から1年間の記事一覧

パーサジェネレータもどき

とりあえず的に出来た物を張っておきます。 構文解析部分は全く出来てないどころか恐らく作らないというか、多分作れないというか…。 いらないところ削ってこれじゃ、日記に貼るには無闇に長すぎる気もするけれどまあ折角なので貼っておきます。あんまり面白…

苦戦

学校のRed HatにDのコンパイラをいれようとする ↓ ダウンロードできない ↓ 気づいたら完了してる ↓ PATHを誤って消す ↓ 適当に直す ↓ root権限がない ←いまここ

おべんきょうのじかんだよ

DにもBoost::Spirit的な何かが欲しいよね、ということで、とりあえず的にExpression Templateでほげほげしたのでした。構文解析とか謎領域なので全く作る気はないのでした。 Expression Templateというのは、簡単にいうと、何でもテンプレート引数に突っ込ん…

があー

今日は久しぶりにゴルフでもやろう…と思ってtriangleをずっと眺めていたんですが、shinhさんがswitch71B出したとかで、触発されて結局switchやってました。縮みませんでした… 絶対にここは縮まない、という箇所を消していくと、何処を縮めればいいのかは分か…

恋人のshinhさんが本を出すことになりました

17:05 (she) 本の宣伝しろと言われているのにゴルフの話しか記述されない僕のはてなだいあり〜 17:06 (niha) じゃあボクが宣伝しておきます 17:06 (niha) 任せてください! 17:09 (she) そういえば 17:09 (she) http://d.hatena.ne.jp/niha/comment?date=200…

プギャー

3rd niha 72 Ruby 9,861 (v24) 4th shinh 73 Ruby 9,726 (v10)正直こんな簡単な書き換えが思い付かないようじゃボクもダメだなという感じの書き換えで2byte縮んだので、非常に微妙な気分です。入門書でも良く見る超ありがちパターンが書けないなんて。絶対ア…

復活

3rd shinh 73 Ruby 9,726 (v10) 4th niha 73 Ruby 9,726 (v23)ここまできたら次に何が起こるか分かるよね!

記号ゴルファーΩ 解答編

答え合わせです。まずはお題を再確認。 「標準入力から文字列を読み込んで、奇数行目の文字列だけを出力するコードを書け」 以下問題解説。 必要な物は「ループ」「分岐」「出力」の三つです。 まずはループ。標準入力を行ごとに回す場合は、「$>.map{|line|…

記号ゴルファーΩ

今日はゴルフはおやすみ…と見せかけて全然そんなことはないのがnihaクオリティです。あと酷いタイトルだと思います。 id:shinichiro_hさんはいつも面白いことを思いつくし、何よりボクより短いコードを書くので憎いです。嘘。いつもお世話になってます… 可能…

3rd shinh 73 Ruby 9,863 (v10) 5th niha 74 Ruby 9,729 (v18)

プギャー

4th niha 75 Ruby 9,600 (v17) 5th carldr 77 Ruby 9,350 (v5) 6th flagitious 77 Ruby 9,350 (v10) 7th T55555 77 Ruby 9,350 (v6) 8th mame 77 Ruby 9,350 (v1) 9th shinh 78 Ruby 9,230 (v8)

ボ略

6th shinh 113 Ruby 9,469 (v12) 7th niha 115 Ruby 9,304 (v14)

プギャー

6th niha 115 Ruby 9,304 (v14) 7th shinh 117 Ruby 9,145 (v10)

切なさを消せやしない

1st jojo 41 Perl 10,000 (v13) 2nd queball 41 Perl 10,000 (v7) 3rd Qube 41 Perl 10,000 (v5) 4th Zeithase 41 Perl 10,000 (v6) 5th carldr 42 Perl 9,761 (v36) 6th flagitious 43 Ruby 9,534 (v6) 7th niha 43 Ruby 9,534 (v9) 8th mel0 45 Ruby 9,111…

うおおお

in pascal's triangle 1st jojo 41 Perl 10,000 (v13) 2nd queball 41 Perl 10,000 (v7) 3rd Qube 41 Perl 10,000 (v5) 4th Zeithase 41 Perl 10,000 (v6) 5th carldr 42 Perl 9,761 (v36) 6th niha 44 Ruby 9,318 (v8) 7th mel0 45 Ruby 9,111 (v2) 8th ben…

ボクは

8th shinh 78 Ruby 9,230 (v8) 9th irori 80 Ruby 9,000 (v4) 10th niha 80 Ruby 9,000 (v14)この悲s

プギャー

9th niha 80 Ruby 9,000 (v14) 10th shinh 81 Ruby 8,888 (v5)

CodeGolf

まだやってたのかという感じですが。 Rangeに手を出したものの、perlの有利っぷりにやる気がおきず、結局beer縮めばかりです。 いい加減体力的にも非常にまずいし、睡眠時間削るのもつらいので、やめようかと思います… そこで授業サボってやるというソリュー…

プライオリティ

理想的なほう CodeGolf>functional D>Ruby Primer(後輩のために変な物を書いてます) 現実的なほう 大学>バイト>>>超えられない壁>>>その他

今日で私は

p "100" < "5" => trueRubyを引退します!!!111 いや嘘ですが…Rubyは引退しても永遠に不滅ですし。それにこのくらいで挫けたりしません。というかアルゴリズムとお前の頭が悪い。 さてそれは兎も角、CodeGolfからはしばらく離れようと思います。まず時…

酷い酷い酷い!

コードを短くしない奴なんて大嫌いだ!

48byteの時点では全く同じコードだったらしくて、その状態からあっという間に1byte縮められて、全然縮められずにいるボクは矢張りダメな子に違いない。 明らかに無駄な部分があるのでなんとか消したいんですが、うーん。 あれさっき追記した部分消えてるな……

Code Golf

もうあちこちで触れられているような、触れられていないような、そんな感じなので紹介は省きますが Code Golf を微妙にやっています。何故か自由になる時間が少なくて睡眠時間削られまくりです。どうしてくれるんだ。 まあつまりRubyです。Rubyの良いところ…

unit in D

23:15 (niha) template rest(char s : ""){ const rest = ""; }はダメで 23:15 (niha) template rest(char s : ""){ const rest = s; }はいいらしいです… 23:18 (she) ホントですね 23:19 (she) そもそも const hoge = "" がダメなのでは 23:19 (she) 違った…

D for Haskeller : Lesson 1024 「高階関数」

以前の話の続きのような物です。誰も続けてくれないので自分で続けます。 今日は高階関数のお勉強をしましょう。 始めは勿論、皆さんご存知「map」です。 template map(alias f, char[] s){ const char[] map = f!(head!(s)) ~ map!(f, rest!(s)); } templat…

D for Haskeller

http://haskell.g.hatena.ne.jp/mr_konn/20061006/1160138831 勿論すごい人の真似な訳ですが。 C++よりDのほうが優れているんだと主張したいので書きます。 対象読者は、ネタをネタと見抜ける人です。 とりあえず「こちら」と比較しながら読みましょう。 ま…

関数束縛

関数束縛なんて以下略。文法は「let fname p0 p1 p2 ... = expr」です。 # let f n = n + 3;; val f : int -> int = <fun> # f 4;; - : int = 7fは整数型を引数に取り、整数型を返す関数です、みたいな感じの解釈でいいんだと思います。 ここでも型推論ちゃんとし</fun>…

変数束縛

変数束縛なんて言葉が本当にあるのかは知りません適当につけました… 兎も角。「let name = val」でnameにvalを束縛するらしいです。 # let x = 1;; val x : int = 1下の謎の出力は「xにint型の1を束縛したよ!」という意味なんだと勝手に解釈。もしかしたら…

OCamlを始めよう!

DでMPLするぐらいなら関数型言語覚えよう、というよくわからない動機で始めることにしました。 巷で人気のハスなんとかを使うのはなんとなく悔しかったので、OCamlです。何よりハスなんとかより文字数が少ないです。その点Dは最強ですが。 とりあえずインス…

再帰関数

文法は「let rec fname p0 p1 p2 ... = expr」です。 とりあえず、再帰といえばn!とかΣnの計算らしいです。どう考えても再帰の例として正しくない気はしますが。 # let rec f x = if x > 1 then x + f x - 1 else 1;; val f : int -> int = <fun> <|| なんだか懐</fun>…