引数なしの手続きを引数にするときに thunk っていうじゃないですか。 この thunk ってどういう意味なのかと思って調べたのですがぴったりくるのがないなあ。 “thunk”の検索結果(2 件):英辞郎 on the Web:スペースアルク 追記 真相はコメントに。
昔話でもしようか。 自分は6年前はプログラミングが全くできなかった。プログラム書ける人は一部の天才だと思っていた。プログラミングができないことに劣等感を覚えた自分は、Linux が使えると格好いいんじゃと思い、Debian で自宅サーバを構築し、アンテナ*1や tDiary で日記サイトを運営したり始めた。 そんなとき、id:antipop と出会った*2。島に住んで、特にITもなにも関係ない仕事をしていた彼が、全く知識が無いところから勉強し Linux で自宅サーバを動かし、php + postgres で blog っぽいシステムを日々バージョンアップさせ、Button Maker for Japanese などのツールを作っていくのを blog 経由でリアルタイムで見ていて、プログラミングもやれば誰でもできるんじゃないかと感じ、自分の日記ツールが tDiary ということもあって、R
ってゆうスイーツ(笑)が少しでもプログラムを理解するには何をしたらいいのでしょうか。何を読んだらいいのでしょうか。ググればググるほど分からなくなってきました。 「初心者のための・・」系を読んでも、サンプルコードというものを見ても、何のこっちゃ分からずで*1、perlにしようかPythonにしようかjavaにしようかC++にしようかとか言ってる場合じゃありません。C++とC#は別クチなんすかね?ですよね。ギャー! どんなふうに始めればいいか分からないしたぶん「私には無理!生まれたときから文系だもん!むしろ文系から生まれたもん!」とか言い訳垂れて諦めるかもしれないんだけど、とりあえず何となく話だけでも分かる風になりたいなーとか思ってー。諦めるまでに達せない自分が歯がゆい>< ギークに「プログラム始めたきっかけって何ですか?」みたいに聞くと(あと記事とか読むと)「自分でゲームを作ったのがはじめ
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
最もタメになる「初心者用言語」は Python! - 西尾泰和のはてなダイアリー Schemeなら、えんざんしとかえんざんしのゆうせんじゅんいとかいんでんととか小難しくてよくわらないものがないから、初心者でも安心して簡単にできるよ > < しかもしかも、ループと再帰呼び出しとか2つもいっぺんに覚えなくても、末尾呼出し1つだけ覚えれば両方できちゃうよ!Schemeすごい! Schemeで豊かな表現力を身につける なんだかよくわからないけど、巷のプログラミング言語は * とか - とか ? が変数名とか関数名につかえない。演算子?なにそれ初心者には難しくてわかんない>< Schemeだったら、「それってシンボル?」って聞く関数は symbol? っていう名前にできるよ。 is_symbolとかわかりにくいよね!!!アンダーバーとかタイプしにくくて初心者向けじゃないし!!! 参照透明できれいな心
id:yuji1982さんのエントリ。 Y Combinatorが凄すぎる! - yuji1982の日記 なにこれ。Y Combinatorすげぇ!意味わからん。 今朝、妻からメールが来ました。 静かに歩く犬は犬じゃない。私の夢に出てきたフレーズ。 意味わからん。でも、それ以上にY Combinator意味わからん。 普通にフィボナッチ数を計算するプログラムは、こうですよね。 static int fib(int n) { if (n < 2) { return n; } else { return fib(n - 1) + fib(n - 2); } } これを、C#のクエリ式で書くと。 static int fib(int num) { Func<int, int> f = null; f = n => (n < 2) ? n : f(n - 1) + f(n - 2); return
最近のいまさら過ぎる Y コンビネータネタとかが 100 近いブクマを集めている様子とかには,正直辟易していたのですが. (あんたらもしかして,ポール・グレアムの VC (http://ycombinator.com/) の名前の由来とかを,今まで知らなかったの ? とか.Web 2.0 プログラマ (?) 向けの VC のような気がするのに… これで,VC の面接の質問の一番最初が 「我々の名前の意味を知ってますか ?」 とかだったら皮肉過ぎる w まぁ,MIT とかスタンフォードとかの計算機科学部を出てれば 100 % 知ってるだろうし,そういう人たち対象なのでしょうが) 2005 年とかにも話題になって,sumii さんとかが同じようにネタにしてたんですよね.Y コンビネータとか,基礎的な計算機科学の概念を勉強する最大の価値は,何度も定期的に繰り返されるブームに踊らされないで済むとい
<< 2008/01/ 1 1. 年賀状 2. ゴビウス 3. [Ruby] ZSFA -- Rails Is A Ghetto 2 1. 新年会 3 4 1. The Mythical 5% 5 6 7 8 1. [言語] Substroke Design Dump 2. [言語] A programming language cannot be better without being unintuitive 3. [OSS] McAfee throws some FUD at the GPL - The INQUIRER 9 1. [言語] Well, I'm Back: String Theory 2. [言語] StringRepresentations - The Larceny Project - Trac 10 1. [Ruby] マルチVMでRubyを並列化、サンと東大が
zickです。 最近、巷(*)ではLisp(Scheme?)を実装するのが流行っているようで。 その流れにのっとって私も変なものをつくってみました。 ***PostScriptで書いたlisp*** ソース 実行結果 名前はまだないのですが、仮にpslispと呼びます。 このpslispはPostScriptで書いたLispインタプリタです。 単に式を評価するだけではなく、その値を図示してくれる優れもの(?)です。 実は去年の4月ごろにほぼ完成していたんですが、 条件分岐などを加え、再帰が使えるようになりました。 ***pslispで書いたlisp*** ソース 実行結果 pslispで動かすためにエスケープ文字を付加し、改行を消しているためカオスなことになってます。 まあ、これだけ見てもなんのことやらといった感じですが、 自分で書いたlispインタプリタの上でさ
Simon Peyton Jones [editor], Microsoft Research, Cambridge Lennart Augustsson, Sandburst Corporation Dave Barton, Intermetrics Brian Boutel, Victoria University of Wellington Warren Burton, Simon Fraser University Joseph Fasel, Los Alamos National Laboratory Kevin Hammond, University of St. Andrews Ralf Hinze, University of Bonn Paul Hudak, Yale University John Hughes, Chalmers University of Techn
オブジェクトとクラスの関係について、次のような説明を見かけました(文言の引用ではなくて、檜山による要約)。 オブジェクトとクラスは全体としてツリー構造をしていて、ツリーの末端をオブジェクト、末端以外のノードをクラスという。末端であるオブジェクトは、その親ノードであるクラスのインスタンスと呼び、クラスどおしの親子関係を継承関係と呼ぶ。 うーむ、この説明、ある意味「簡潔でわかりやすい」とも言えるのだけど、ちょっと単純化し過ぎでしょ。 オブジェクトやクラスの概念て、そんなに美しくもなきゃ、整合的でもありません。実用性やら実装上の都合やらでゴチャゴチャですがね。しかし、そのゴチャゴチャが悪いともいえません。ゴチャゴチャを無理に単純化することなく、必然性を持った(幾分は偶発的だけど(苦笑))複雑さとして理解すべきかと思います。 というわけで、メタクラスやレイフィケーション(reification)な
「イベントモデルの概念と用語法が混乱しているので、イライライするんですが」が随分長くなったので、その要点を箇条書きにまとめておきます。 Javaイベントモデルにおけるイベントソースを、DOMイベントモデルではイベントターゲットと呼ぶ。 DOMツリー内をイベントが伝搬する運動過程をイベントフローと呼ぶ。 イベントフローのときに通過するノードの列をチェインと呼ぶ。チェインの両端は、ルートノードとイベントターゲット・ノードである。 イベントフローは、キャプチャリング・フェイズ、ターゲット・フェイズ、バブリング・フェイズの3つの部分に分けられる。 イベントフローのチェインに含まれるノードは、EventTargetインターフェースを実装する必要がある。 「イベントフローの折り返し点=チェインの端点」であるイベントターゲットと、EventTargetインターフェースおよびEventTargetを実装し
サイ本の読書会行ってきました。 http://cotocoto.jp/event/2880 仕事と場所の関係で大幅に遅刻さんだったのだけど、とりあえず参加できた範囲でまとめますだ。 まとめは人のためならず。 まとめることは再確認になって、自分のためになると思います。 とりあえず1時間遅刻して入ると >>> undefined = 3; undefined; 3 的な事がかかれてた。 37Pにあるけど、undefinedは予約語ではないので書き換えられるって事やね。 後Lingrにあるけど。 # undefined = "a" # undefined //=> "a" # array = new Array(10) # array[0] //=> null # array[0] + 0 //=> NaN # typeof(array[0]) //=> undefined # window.u
21:58 06/04/29 FLOPS 自分はFLOPSには行ってないけど (すみません(^^;)それのために来日した人と会いまくる 日でした。具体的には shelarcy さんに誘われて、Oleg Kiselyov 氏 と Andrew Pimlott 氏 と語る会 →→ Guy Steele 氏と鍋をつつく会、のコンボ。 Oleg (SXMLの人でMetaOCamlの人でZipperFSの人でetc.etc.)もGuy(CommonLisp本の人でSchemeの 人でJavaの人でetc.etc.)も自分から見れば雲の遙か上の人で。このような機会をくれた方々に 本当に本当に感謝です。 Scheme, Haskell, ... Olegさん達とは、FLOPSで発表されてた Soutei というシステムの話。 なぜだか最後の方はひたすら cut-sea さんマシンのGaucheでUnif
これから一からプログラミングを覚えようと考えています。 様々… - 人力検索はてな この質問をみてて、PHP がにんき?みたいだったので試してみたくなりました! <?php function get_files($dir) { $ret = array(); $dh = opendir($dir); while (($f = readdir($dh)) !== FALSE) { if ($f == "." || $f == "..") { continue; } $f = $dir . "/" . $f; if (is_dir($f)) { $ret += get_files($f); } else { $ret[] = $f; } } closedir($dh); return $ret; } print_r(get_files("data")); // PHP だけのファイルは ?>
「Makefileの書き方:プログラミング言語Make」のコメント欄で、shiroさんから「引数付き関数もユーザー定義できるよ」とご指摘いただきました。 http://www.gnu.org/software/automake/manual/make/index.htmlを見てみたら、最近のGNU Makeでは引数を扱えることが判明。例えば、次のように使えます。 SUBDIRS := src include test files = $(wildcard $(1)/*.erl) $(wildcard $(1)/*.hrl) ALL_FILES := $(foreach dir,$(SUBDIRS),$(call files,$(dir))) filesが引数付き関数(Make用語ではパラメータを持つ再帰的変数)です(($(wildcard $(1)/*.erl) $(wildcard $(
「Makefileの書き方、その勘どころ」にて: まだ、関数を使ってソースやターゲットを生成する方法とかパターン規則の説明をしてないので、続きを書くと思います。調べているうちに、GNU Makeの構文(の一部)はある種のプログラミング言語だという気がしてきました;そのことも書きたい気がしてます。 というわけで続きを書きます。 実は、関数呼び出しを使うときは、代入に「=」を使うより「:=」のほうが適切かつ効率的なときが多いのですが、その話は次の機会にします。 これの説明が中心になります。 内容: 前置き 変数の種類と変数定義 ソースコードの後のほうを参照すること Makeは上から下へと実行していくのだ MakeとLispは似ている 実例 ●前置き 以下、Make一般ではなくてGNU Makeの話です。GNU Makeより古いMakeにも備わっていた伝統的機能の説明はしません。 GNU Mak
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く