引数なしの手続きを引数にするときに thunk っていうじゃないですか。 この thunk ってどういう意味なのかと思って調べたのですがぴったりくるのがないなあ。 “thunk”の検索結果(2 件):英辞郎 on the Web:スペースアルク 追記 真相はコメントに。
整列済みの number のリストがある。 '(1 3 4 5 6 12 13 15) このようなリストで数が連続している部分は '(1 2 3) -> '(1 . 3) のように両端のみを書くような記法を導入する。 最初の例のリストであれば以下のようになる。 '(1 (3 . 6) (12 . 13) 15) このようなリストの変換をするコードを書きたい。 自分の答えは↓だが、いまいちスマートではない。もっとかっこいいのを思いついたら教えてください。 (define (compact-number-list lst) (define (exact-next-number? a b) (cond [(and (number? a) (number? b)) (= (- b a) 1)] [(and (pair? a) (number? b)) (exact-next-number? (cd
引っ越したら時間の進み方がゆっくりに感じられるようになった。自分だけでなく妻も「一日が長い」と言っている。 増井さんが書かれていた以下の文章を思い出す。 感覚は経験に大きく左右されます。歳をとると時間の経過が速く感じられたり、帰り道が行きの道より短く感じられたりするのは、新しい経験が減るからでしょう。 繰り返しの多い圧縮可能な人生を送っているとあっという間に時間が過ぎてしまいますから注意しなければなりません。 生活に繰り返しが多くなってきたと感じたときは引っ越したり転職したりすると時間が長く感じられるようになります。 新しい経験や刺激が常に出会える環境を維持する努力をしよう。小さな工夫で色々できるはずだ。 それにしても「圧縮可能な人生」という言葉はぴったりはまる言葉だ。
オープンソースマガジン2007年1月号に向けて書いた記事の元の原稿です。 前回のアルファギーク舘野君から、バトンを渡されたひげぽんです。 Mona OSというオープンソースOSを開発しています。 僕はハッカーと呼ばれるには実力不足ですが、知り合いのスゴ腕ハッカーに少しでも追いつこうと日々実践していることをいくつか紹介します。 ハッカーに学ぶ オンラインでもオフラインでも構いません、自分よりも優れているハッカーを探してお手本とすることから始めましょう。 彼(または彼女)が何を勉強し、発言し、考えているかを観察することで多くのことを学べるはずです。 周りにハッカーがいなければ、勉強会・カンファレンスに参加したり、ブログを利用してコミュニケーションをとるのもひとつの方法です。 「ハッカーに交わればハッカーになる」とまではうまくいきませんが、周りは自分より優秀な人ばかりであるという環境を作り上げる
約半年をかけて計算機プログラムの構造と解釈(SICP)を読み終わりました。 (途中で、練習問題をスキップしたりしましたが・・・) 半年もかけたのでちょっとだけ振り返って見ます。 SICPを読む過程で得たもの まずはSICPを読む過程で得たものからざっと列挙してみよう。 構文解析を理解し自前で実装できるようになった 字句解析を理解し自前で実装できるようになった ストリームを理解した 遅延評価を理解した 手続きが first class objectである言語での考え方を学んだ 型変換の導入の動機とその意味を理解した 手続きの抽象化の導入の動機と過程を学んだ 高階関数を使ったり書けるようになったりした クロージャを理解した Schemeを書けるようになった 再帰処理を自然に書けるようになった フルスクラッチでインタプリタを書けるようになった コンパイラを自前で書くことが出来そうだとの感触を得た
小ネタです。 1.hoge 2.hage 3.hige M-x reverse-region 3.hige 2.hage 1.hoge今日実際に使いました。
最近はてな開発者に勉強ブームが? N氏はふつうのLinuxプログラミング Linuxの仕組みから学べるgccプログラミングの王道。 YさんとTさんはふつうのHaskellプログラミング ふつうのプログラマのための関数型言語入門。 僕とM君は計算機プログラムの構造と解釈。 Mさんは家で執筆していそうだし。 JさんはJavaScript読むべしとかいっていたし。 W君は難しそうな分厚いの。 S君は Swig でRubyバインディングとかやってC++の勉強しようかしらとかいっている OさんはRubyistグループ。 K君はEffective Perl。 A君は家でごにょごにょやっているらしいし。 Dさんは入門bash 第3版。 周りが勉強しまくっているという状況は、プレッシャがあってとても良い環境だなと思う。 あと全然関係ないですが、オープンソースマガジン 7月号に、われらが、osdev-jの期
Joel on Softwareを3/4ほど読み終わってかぶれてきた奥さんとの会話。 画面を覗き込みながら 奥:「ねぇ。それEmacsってやつ?」 ひげ:「うん」 奥:「Emacsって無料(タダ)?」 ひげ:「うん」 奥:「でもEmacsって難しいんでしょ?だから私は v ? v?で良いや」 ひげ:「vi? vim?」 奥:「うん。それ。」 ひげ:「wwww」(vimは簡単?) 奥:「だってさ秀丸はさ、金払えって脅してくるんでしょ?*1」 ひげ:「wwwwwww」 1週間前まではきっと、Emacsもvimも秀丸も知らなかったと思う。 エディタという概念も知らなかったかも。 Joel様恐るべし。 しかし、どこで覚えてきたんだろう・・・。 微妙に知識が間違っていて面白い。 西洋人が変な漢字タトゥーを入れているのを連想させる。 まじめな書評は→プログラマは必読かも 「Joel on Softwa
奥さんがJoel on Softwareを読みはじめた。 技術者が欲しかったら「ハッカーと画家」と「Joel on Software」をとりあえず読んで、プログラマの心理をある程度理解すればいいだけなのかもしれないw を読んで、プログラマの妻としてプログラマの心理を理解するために読んでみたくなったとのこと。 ちょwwwおまwwwwプログラマじゃないし ついでに「ハッカーと画家 コンピュータ時代の創造者たち」も読んで欲しいな(ぉ。 id:higepon:20051223:1135342695で僕が絶賛したときには全然興味を持っていなかったのですが、id:naoya恐るべき影響力。 追記 声もかけられないほど真剣に読んでいる。ゾーンにはいったっぽいw。 追記2 ユニコード勉強するとか言い出したwwww 追記3 「面倒だろうけど仕様書は書いたほうが良いよ。そのほうが生産性が上がるから」って言われ
頭脳労働系の自分の限界はある程度把握しているが、体力勝負系はどうだろうか?というのが知りたかったので山手線を自転車で1周してきました。 ひげぽんスペック 基本的にのび太 運動嫌い 小中学生のころはずっとクラスで走るのが遅いNo.2だった(No.1は体型がとてもふくよかな人) 体育の成績で真ん中よりも上は一度もとったことがない 個人責任の重い球技とか大嫌い。狙われるのでw。(バレーボールとか野球とか) 写真 全写真はこちら 恵比寿出発 14:30 目白 15:31 通りを歩く人たちが上品。 鶯谷 16:38 鶯谷って行く機会ないよね。お初です。 秋葉原 17:02 アイドル(?)に群がるアキバの皆様 新橋 17:35 有楽町・新橋付近の飲食店は良いにおいがしてやばっかった。 五反田 18:27 ゴールは近い。暗くなってきた。 恵比寿 18:42 ただいま 結果 4時間12分で1周しました。
会社で使っているPCのcoLinuxのホームディレクトリで ls *.plしてみた。 colinux% ls *.pl hage.pl hige.pl hige2.pl hoge.pl huga.pl time.pl うはっww。 やる気ないなぁ。いくら書き捨てのソースとはいえhageはひどいww。 というわけでプログラマの皆さん、ホームディレクトリで ls してみて面白いファイル名をぜひお寄せください。 *.csと*.rb とか *.pyとか *.cppとか *.phpとか何でもいいので。 言語によって特性が出て、この言語は優秀とかあるだろうか。 polさん(ls -l *.c) とてもまとも。 del.c mem.c myserver.c test.c id:jazzanovaさん(ls -l *.php) うはww。 docomo.php index.php info.php md5
id:secondlifeが僕がエディタで入力しているのを見て「キーリピート間隔、ストレスたまりませんか?」と聞かれた。 そのときは今のまま(デフォルト)で問題ないと思ったんですが、「コントロールパネルーキーボード」からキーリピート間隔を短くしたらとても快適になりました。 同じキーを長時間押し続けて、同じ文字を連続して入力すること。1文字入力するつもりで複数文字入力されてしまう現象を防ぐため、キーを押し始めてから0.5秒〜1秒程度経過するまではキーリピートされない。連続して入力する際、それぞれの間隔を何秒空けるかをソフトウェアで設定できるようになっていることが多い。この間隔のことをキーリピート間隔という。 追記: id:krackmaniaさんとid:secondlifeにつっこまれた http://www.jsdlab.co.jp/~kamei/ にある、kbdacc を使うのが常識のよ
直前に閉じたバッファを開く っていう機能ないのかな。 なかったら作ろうかな。 Firefoxの「タブを閉じるをやり直す」みたいな。 なんてぼやいたところ、なおとさんからたたき台が!。 すばらしい。これならたいていのシチュエーションで救われますね。 (defvar killed-file-name nil) (add-hook 'kill-buffer-hook (lambda () (when (buffer-file-name) (setq killed-file-name (expand-file-name (buffer-file-name)))))) (defun find-killed-file () (interactive) (when killed-file-name (find-file killed-file-name) (setq killed-file-name n
ネットワークサーバー実装のためにuIPのソースを読もう。 NICドライバの移植のためにFreeBSDのソースを読もう。 ということで以前使っていた etags を使おうと思ったがキーバインド忘れた。 そして etags はなんだかいろいろ不満点があった気がするので GLOBALを使ってみることに。 以前GLOBALは出力をHTMLにして使ったことがあるのだが、最近EmacsにどっぷりなのでEmacsから使ってみることに。 0.GLOBALって何? GNU GLOBAL は、ソースコードに索引付けを行うことで、大規模システムのハックやレビューを効率化するソフトウエアです。 ソースファイル中の指定したシンボルを高速に見つけ出し、素早くその場所に移動することができます。多くのサブディレクトリからなり、#ifdef や main() 関数を沢山含んでいるような、いわゆる巨大なプロジェクトをハックす
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く