[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

lazyに関するkiyo_hikoのブックマーク (10)

  • thunk(サンク)というものについて - S.F. Page

    2014-01-03 thunk(サンク)というものについて 未分類 thunkとは「ずしん」「ぶすっ」とかいう意味らしいのだがどうもコンピュータで使われるthunkとは合わないのである。。最初にthunkという言葉を観たのはWin16からWin32への移行の過渡期である。 サンクとは、一般的に、Windows 95やWindows 98などのWindows系32ビットOSにおいて、16ビットコードと32ビットコードを相互に利用するために、命令の変換を行う機構のことである。 (引用元:IT用語辞典) http://www.sophia-it.com/content/thunk 続いてATL WindowでもHWNDとthisを結びつけるコードをサンクと呼んでおり、そういう変換するコードをサンクと呼ぶのかなと思っていたのである。何かと何かをくっつけるノリのようなイメージであろうか。 なの

    thunk(サンク)というものについて - S.F. Page
    kiyo_hiko
    kiyo_hiko 2015/01/28
    ALGOL60で引数なしの手続きAを別の手続きBに渡すと、Aは正格には評価されず、B内部でAの結果を必要とする時まで遅延されるということらしい。P言語なら無名関数で渡して必要なタイミングで起動すればよさそうだ。…って
  • 遅延評価いうなキャンペーンとかどうか - ぐるぐる~

    遅延評価については以前も書いてるんですが、そのときは結論なしでした。 が、ちょっと考えるところがあって、言語を Java に絞って自分の考えを明確にしておきます。 結論から書きましょう。 「Java(とC#) で遅延評価って書いてあるものは遅延評価ではない」です。 Java における「評価」とは まず一番最初に、Java で「評価」って言うと、どういうことを指すのかを確認しておきます。 言語仕様の該当部分を要約すると、こんな感じでしょうか。 プログラム中の式を評価すると、結果は 変数 値 無し のうちのどれかとなる。 評価した結果が値になる、というのはいいでしょう。それ以外の 2 つを軽く説明します。 評価の結果が「変数」とは? コメント欄で指摘が入っています。 代入の結果は変数ではありません(15.26)。 結果が変数となるのは、ローカル変数、現在のオブジェクトやクラスの変数、フィールド

  • 実装して理解する遅延評価の仕組み 〜 thunkを絵に描いて理解しよう・JavaScriptでHaskellを実装!? - プログラムモグモグ

    この記事では, Haskellに用いられる「遅延評価」の仕組みを, 図に描いて説明します. 更に, 遅延評価版のフィボナッチ数の無限列を, JavaScriptで実装します. 遅延評価とはどのように動くのか, 考えて行きましょう. HaskellのコードとJavaScriptのコードの比較 Haskellでの x = y y = 10 と, JavaScriptの var x = y; var y = 10; というコードを考えてください. Haskellのコードは, これだけでは何も起こりません. print xとすると, x = y = 10 となって 10 が表示されます. 一方, JavaScriptのコードは var x = y; を評価した瞬間, 「ReferenceError: y is not defined」というエラーが出ます. 更に, main = let x = 1

    実装して理解する遅延評価の仕組み 〜 thunkを絵に描いて理解しよう・JavaScriptでHaskellを実装!? - プログラムモグモグ
  • 痛いニュース(ノ∀`) : 森永卓郎氏 「見た目のよい男性にイケメン税を課す。不細工も恋愛しやすく、結婚する人が増える」 - ライブドアブログ

    森永卓郎氏 「見た目のよい男性にイケメン税を課す。不細工も恋愛しやすく、結婚する人が増える」 1 名前: ◆SCHearTCPU @胸のときめきφ ★:2012/12/11(火) 05:06:34.35 ID:???0 「見た目のよい男性にイケメン税を課し、不平等を少しでも是正すれば、不細工な男性も恋愛しやすくなり、結婚する人が増える」――。経済アナリストの森永卓郎さんは、少子化対策でこんなアイデアを提唱している。奇策にも見えるが、人は大まじめだ。 「所得の格差がよく注目されるが、もっと深刻なのは容姿の格差。見た目がよい男性はとんでもない数の女性を獲得している。同時に100人以上の女性と関係している男性もいる。その結果、女性が一部の男性に集中するという問題が起きている」テレビ出演などを通じていわゆる二枚目の男性の恋愛事情を知る機会も多い という森永さんは、こう指摘する。 恋愛の際

    kiyo_hiko
    kiyo_hiko 2012/12/12
    イケメンを不利にして条件のトータルが自分たちに近づいてきたら、自分たちはより努力しなくていいんだと思ってますますひどくなると思う。
  • 評価戦略 - Wikipedia

    出典は列挙するだけでなく、脚注などを用いてどの記述の情報源であるかを明記してください。 記事の信頼性向上にご協力をお願いいたします。(2014年9月) 評価戦略(ひょうかせんりゃく、英: evaluation strategy)とは、プログラミング言語や、ラムダ計算のような式から成る計算模型において、如何なる手順で、評価すなわち式から値を得るか、という(通常決定的な)規則群である。 プログラミング言語では、その意味のうち、サブルーチン呼び出しや演算子式の評価において引数をいつどういう順序で評価し、仮引数は実引数にどう置換されるのか、サブルーチン呼び出しや演算子式の値への置換はどうなのかといったことが、言語仕様によって、あるいは実装によって定義される(あるいは未定義とされる)。 ラムダ計算(など)における評価すなわち簡約(reduction)においては「(1)入れ子状になった式の最も外側から

    kiyo_hiko
    kiyo_hiko 2012/05/22
    SICPに出ていたApplicative Orderは適用順序評価、Normal Orderは正規順序評価というらしい。正規順序での評価は遅延評価になるので、(define (p) (p)) (if (> 1 1) (p) 0)みたいなのが無限ループに陥らず評価できるらしい
  • 『IBM Developer』へのコメント

    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

    『IBM Developer』へのコメント
    kiyo_hiko
    kiyo_hiko 2012/03/21
    pseudo-typedef antipatternは具象を回りに伝播するという害悪だった。ちょっと落ち着いて考えてみると、連番の糞クラス名から、定数を拾ってくる程度の使用法ならありかもしれないと思ったがまあ必要(?)になったら考えよう
  • ヒステリック速報 東方Project最新作「東方神霊廟」が駄作すぎると話題に

    kiyo_hiko
    kiyo_hiko 2012/03/17
    「ZUNのインタビューで絵はそこそこ描けるようになったら練習せずにオリジナルを描けばいいんですよみたいなこと言ってた 絵の質よりもオリジナリティーを優先」…ああだからああいう絵の侭なのか なんか納得した
  • Java で遅延評価式を実装する。 - にょきにょきブログ

    Java は先行評価式の言語であるが、遅延評価を行えるよう遅延評価式の実装を行う。 遅延評価はサンク( Thunk, 遅延評価 - Wikipedia ) と呼ばれ、値が必要になった時点で計算をする。 要件 式を表す事ができること 値を表すことができること 遅延評価が出来る事 eval メソッドで評価ができること 以下の演算を行える事 Add (加算) Multiply (乗算) Div (除算) Pow (冪乗) Mod (剰余) 使い方は最後に載せようと思ったが、記事がやけに長くなったのでここでお披露目する。 を表すサンクを作る。 public static void main(String[] args) { // (2+7)^31 を表すサンクを生成 Thunk t1 = new Thunk(2).add(7).pow(31); // (3*7)^2 を表すサンクを生成 Thunk

    Java で遅延評価式を実装する。 - にょきにょきブログ
  • 第14回 関数脳のつくり方 Second Season 〜モナドで悟りをひらく〜 - 刺激を求める技術者に捧げるScala講座:ITpro へのツッコミ - kmizuの日記

    ITProのScala連載「刺激を求める技術者に捧げるScala講座」の第14回 関数脳のつくり方 Second Season 〜モナドで悟りをひらく〜がはてなブックマークで150ブクマ超えるなど注目を集めていますが、読んで見ると初学者に誤解を与える箇所が散見されるので、一応、連載に関わってる者(といっても1回記事書いただけですが)の一人としてツッコミを入れさせていただきます。 「参照透明性を保持しながら手続き型的な記述をするための枠組み」?(p.1) モナドとは,関数型言語で,参照透明性を保持しながら手続き型的な記述をするための枠組みです。 早速ですが、これは、IOモナドやStateモナドには当てはまっても、全てのモナドについて当てはまるものではないですよね。たとえば、Maybeモナドではこれは当てはまりません。 「モナドがHaskellで必要な理由」? これはページタイトルの一部ですが

    第14回 関数脳のつくり方 Second Season 〜モナドで悟りをひらく〜 - 刺激を求める技術者に捧げるScala講座:ITpro へのツッコミ - kmizuの日記
  • javascript - にも無限リストを : 404 Blog Not Found

    2010年10月05日20:30 カテゴリLightweight Languages javascript - にも無限リストを 欲しいと思って書いてみたら案外さくっと出来たので。 Demo とりあえずこんな感じ。 var facts = new Array.Lazy([1,1],function(i){ return this[this.length-1] * i }); p( facts ); p( facts[10] ); p( facts.get(10) ); p( facts ); var fibs = new Array.Lazy([0,1],function(i){ return this[this.length-2] + this[this.length-1] }); p( fibs[10] ); p( fibs.take(10) ); var natural = new

    javascript - にも無限リストを : 404 Blog Not Found
  • 1